Load damage numerals; this example uses 1234 as damage
...jump from $3061...
C2/052E A5 D0       LDA $D0    [$00:00D0]   A:0001 X:00D2 Y:2400 ;total damage (number)
C2/0530 8D D0 30    STA $30D0  [$00:30D0]   A:0001 X:00D2 Y:2400
C2/0533 A9 56 05    LDA #$0556              A:0001 X:00D2 Y:2400 ;runs code at C2:0556
C2/0536 8D 6E 30    STA $306E  [$00:306E]   A:0556 X:00D2 Y:2400
C2/0539 9C 60 30    STZ $3060  [$00:3060]   A:0556 X:00D2 Y:2400
C2/053C A9 01 00    LDA #$0001              A:0556 X:00D2 Y:2400
C2/053F 0C 00 30    TSB $3000  [$00:3000]   A:0001 X:00D2 Y:2400 
C2/0542 22 00 08 00 JSL $000800[$00:0800]   A:0001 X:00D2 Y:2400 

C2/0546 AD D2 30    LDA $30D2  [$00:30D2]   A:0001 X:00D2 Y:2400 
C2/0549 95 00       STA $00,x  [$00:00D2]   A:0201 X:00D2 Y:2400 ;damage numeral (display)
C2/054B AD D4 30    LDA $30D4  [$00:30D4]   A:0201 X:00D2 Y:2400 
C2/054E 95 02       STA $02,x  [$00:00D4]   A:0403 X:00D2 Y:2400 
C2/0550 AD D8 30    LDA $30D8  [$00:30D8]   A:0403 X:00D2 Y:2400 
C2/0553 95 04       STA $04,x  [$00:00D6]   A:0004 X:00D2 Y:2400 
C2/0555 60          RTS                     A:0004 X:00D2 Y:2400 



----------------------------------------------------------------
SA-1 cpu chip; executed BEFORE C2/0546

C2/0556 A9 00 00    LDA #$0000              A:0000 X:0000 Y:7460 
C2/0559 85 D2       STA $D2    [$00:00D2]   A:0000 X:0000 Y:7460 
C2/055B 85 D4       STA $D4    [$00:00D4]   A:0000 X:0000 Y:7460 
C2/055D 85 D8       STA $D8    [$00:00D8]   A:0000 X:0000 Y:7460 
C2/055F A9 01 00    LDA #$0001              A:0000 X:0000 Y:7460 
C2/0562 8D 50 22    STA $2250  [$00:2250]   A:0001 X:0000 Y:7460 
C2/0565 A5 D0       LDA $D0    [$00:00D0]   A:0001 X:0000 Y:7460 ;load final damage
C2/0567 C9 E8 03    CMP #$03E8              A:04D2 X:0000 Y:7460 ;check if in 1000's
C2/056A 30 18       BMI $18    [$0584]      A:04D2 X:0000 Y:7460 ;branch if less than 1000
C2/056C 8D 51 22    STA $2251  [$00:2251]   A:04D2 X:0000 Y:7460 
C2/056F A9 E8 03    LDA #$03E8              A:04D2 X:0000 Y:7460 
C2/0572 8D 53 22    STA $2253  [$00:2253]   A:03E8 X:0000 Y:7460 
C2/0575 A9 04 00    LDA #$0004              A:03E8 X:0000 Y:7460 ;load 4
C2/0578 85 D8       STA $D8    [$00:00D8]   A:0004 X:0000 Y:7460 ;set numeral count as 4 (numerals)
C2/057A AD 06 23    LDA $2306  [$00:2306]   A:0004 X:0000 Y:7460 
C2/057D 85 D2       STA $D2    [$00:00D2]   A:0001 X:0000 Y:7460 
C2/057F AD 08 23    LDA $2308  [$00:2308]   A:0001 X:0000 Y:7460 ;load lower 3 digits (234)
C2/0582 85 D0       STA $D0    [$00:00D0]   A:00EA X:0000 Y:7460 

C2/0584 C9 64 00    CMP #$0064              A:00EA X:0000 Y:7460 ;check if in 100's
C2/0587 30 1C       BMI $1C    [$05A5]      A:00EA X:0000 Y:7460 ;branch if less than 100
C2/0589 8D 51 22    STA $2251  [$00:2251]   A:00EA X:0000 Y:7460 
C2/058C A9 64 00    LDA #$0064              A:00EA X:0000 Y:7460 
C2/058F 8D 53 22    STA $2253  [$00:2253]   A:0064 X:0000 Y:7460 
C2/0592 A5 D8       LDA $D8    [$00:00D8]   A:0064 X:0000 Y:7460 ;load numeral count
C2/0594 D0 05       BNE $05    [$059B]      A:0004 X:0000 Y:7460 ;branch if not 0, otherwise set as 3
C2/0596 A9 03 00    LDA #$0003
C2/0599 85 D8       STA $D8    [$00:00D8]

C2/059B AD 06 23    LDA $2306  [$00:2306]   A:0004 X:0000 Y:7460 
C2/059E 85 D3       STA $D3    [$00:00D3]   A:0002 X:0000 Y:7460 
C2/05A0 AD 08 23    LDA $2308  [$00:2308]   A:0002 X:0000 Y:7460 ;load lower 2 digits (34)
C2/05A3 85 D0       STA $D0    [$00:00D0]   A:0022 X:0000 Y:7460 

C2/05A5 C9 0A 00    CMP #$000A              A:0022 X:0000 Y:7460 ;check if in 10's
C2/05A8 30 1C       BMI $1C    [$05C6]      A:0022 X:0000 Y:7460 ;branch if less than 10
C2/05AA 8D 51 22    STA $2251  [$00:2251]   A:0022 X:0000 Y:7460 
C2/05AD A9 0A 00    LDA #$000A              A:0022 X:0000 Y:7460 
C2/05B0 8D 53 22    STA $2253  [$00:2253]   A:000A X:0000 Y:7460 
C2/05B3 A5 D8       LDA $D8    [$00:00D8]   A:000A X:0000 Y:7460 ;load numeral count
C2/05B5 D0 05       BNE $05    [$05BC]      A:0004 X:0000 Y:7460 ;branch if not 0, otherwise set as 2
C2/05B7 A9 02 00    LDA #$0002
C2/05BA 85 D8       STA $D8    [$00:00D8]
C2/05BC AD 06 23    LDA $2306  [$00:2306]   A:0004 X:0000 Y:7460 
C2/05BF 85 D4       STA $D4    [$00:00D4]   A:0003 X:0000 Y:7460 
C2/05C1 AD 08 23    LDA $2308  [$00:2308]   A:0003 X:0000 Y:7460 ;load lowest digit (4)
C2/05C4 85 D0       STA $D0    [$00:00D0]   A:0004 X:0000 Y:7460 

C2/05C6 85 D5       STA $D5    [$00:00D5]   A:0004 X:0000 Y:7460 
C2/05C8 A5 D8       LDA $D8    [$00:00D8]   A:0004 X:0000 Y:7460 ;load numeral count
C2/05CA D0 05       BNE $05    [$05D1]      A:0004 X:0000 Y:7460 ;branch if not 0, otherwise set as 1
C2/05CC A9 01 00    LDA #$0001
C2/05CF 85 D8       STA $D8    [$00:00D8]

C2/05D1 A9 04 00    LDA #$0004              A:0004 X:0000 Y:7460 ;load 4 as maximum numeral count
C2/05D4 38          SEC                     A:0004 X:0000 Y:7460 
C2/05D5 E5 D8       SBC $D8    [$00:00D8]   A:0004 X:0000 Y:7460 ;subtract current numeral count from 4
C2/05D7 F0 0B       BEQ $0B    [$05E4]      A:0000 X:0000 Y:7460 ;branch if at 0

C2/05D9 3A          DEC
C2/05DA 9B          TXY
C2/05DB AA          TAX
C2/05DC B5 D2       LDA $D2,x  [$00:00D2]
C2/05DE 09 FF 00    ORA #$00FF
C2/05E1 95 D2       STA $D2,x  [$00:00D2]
C2/05E3 BB          TYX

C2/05E4 A9 01 00    LDA #$0001              A:0000 X:0000 Y:7460 
C2/05E7 8D 60 30    STA $3060  [$00:3060]   A:0001 X:0000 Y:7460 
C2/05EA 60          RTS                     A:0001 X:0000 Y:7460 
C2/06A6 C2 30       REP #$30                A:0001 X:0000 Y:7460 
C2/06A8 7A          PLY                     A:0001 X:0000 Y:7460 
C2/06A9 FA          PLX                     A:0001 X:0000 Y:7460 
C2/06AA 68          PLA                     A:0001 X:0000 Y:7460 
C2/06AB 2B          PLD                     A:0000 X:0000 Y:7460 
C2/06AC AB          PLB                     A:0000 X:0000 Y:7460 
C2/06AD 6B          RTL                     A:0000 X:0000 Y:7460 

----------------------------------------------------------------
C2/0730 A2 00 00    LDX #$0000              A:00C2 X:2400 Y:2400 P:enVmxdIzc
$C2/0733 9B          TXY                     A:00C2 X:0000 Y:2400 P:enVmxdIZc
$C2/0734 BF E1 01 C2 LDA $C201E1,x[$C2:01E1] A:00C2 X:0000 Y:0000 P:enVmxdIZc
$C2/0738 F0 0C       BEQ $0C    [$0746]      A:2C00 X:0000 Y:0000 P:enVmxdIzc
$C2/073A AA          TAX                     A:2C00 X:0000 Y:0000 P:enVmxdIzc
$C2/073B BF 00 00 40 LDA $400000,x[$40:2C00] A:2C00 X:2C00 Y:0000 P:enVmxdIzc
$C2/073F F0 06       BEQ $06    [$0747]      A:0088 X:2C00 Y:0000 P:enVmxdIzc
$C2/0741 BB          TYX                     A:0088 X:2C00 Y:0000 P:enVmxdIzc
$C2/0742 E8          INX                     A:0088 X:0000 Y:0000 P:enVmxdIZc
$C2/0743 E8          INX                     A:0088 X:0001 Y:0000 P:enVmxdIzc
$C2/0744 80 ED       BRA $ED    [$0733]      A:0088 X:0002 Y:0000 P:enVmxdIzc

C2/0747 A5 E0       LDA $E0    [$00:00E0]   A:0000 X:2D00 Y:0004 P:enVmxdIZc
C2/0749 9F 00 00 40 STA $400000,x[$40:2D00] A:0080 X:2D00 Y:0004 P:enVmxdIzc
C2/074D A5 E2       LDA $E2    [$00:00E2]   A:0080 X:2D00 Y:0004 P:enVmxdIzc
C2/074F 0A          ASL A                   A:0010 X:2D00 Y:0004 P:enVmxdIzc
C2/0750 A8          TAY                     A:0020 X:2D00 Y:0004 P:enVmxdIzc
C2/0751 B7 EA       LDA [$EA],y[$C2:E674]   A:0020 X:2D00 Y:0020 P:enVmxdIzc
C2/0753 18          CLC                     A:EA83 X:2D00 Y:0020 P:eNVmxdIzc
C2/0754 65 E4       ADC $E4    [$00:00E4]   A:EA83 X:2D00 Y:0020 P:eNVmxdIzc
C2/0762 A5 EC       LDA $EC    [$00:00EC]   A:EA8B X:2D00 Y:0020 P:eNvmxdIzc
C2/0764 9F 04 00 40 STA $400004,x[$40:2D04] A:00C2 X:2D00 Y:0020 P:envmxdIzc
C2/0768 A9 00 00    LDA #$0000              A:00C2 X:2D00 Y:0020 P:envmxdIzc
C2/076B 9F 06 00 40 STA $400006,x[$40:2D06] A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/076F 9F 08 00 40 STA $400008,x[$40:2D08] A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/0773 A9 FF FF    LDA #$FFFF              A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/0776 9F 0A 00 40 STA $40000A,x[$40:2D0A] A:FFFF X:2D00 Y:0020 P:eNvmxdIzc
C2/077A 9F 0C 00 40 STA $40000C,x[$40:2D0C] A:FFFF X:2D00 Y:0020 P:eNvmxdIzc
C2/077E 9F 0E 00 40 STA $40000E,x[$40:2D0E] A:FFFF X:2D00 Y:0020 P:eNvmxdIzc
C2/0782 9F 2A 00 40 STA $40002A,x[$40:2D2A] A:FFFF X:2D00 Y:0020 P:eNvmxdIzc
C2/0786 9F 2C 00 40 STA $40002C,x[$40:2D2C] A:FFFF X:2D00 Y:0020 P:eNvmxdIzc
C2/078A 9F 2E 00 40 STA $40002E,x[$40:2D2E] A:FFFF X:2D00 Y:0020 P:eNvmxdIzc
C2/078E A9 00 00    LDA #$0000              A:FFFF X:2D00 Y:0020 P:eNvmxdIzc
C2/0791 9F 12 00 40 STA $400012,x[$40:2D12] A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/0795 9F 10 00 40 STA $400010,x[$40:2D10] A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/0799 9F 14 00 40 STA $400014,x[$40:2D14] A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/079D 9F 16 00 40 STA $400016,x[$40:2D16] A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/07A1 9F 1A 00 40 STA $40001A,x[$40:2D1A] A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/07A5 9F 18 00 40 STA $400018,x[$40:2D18] A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/07A9 9F 1C 00 40 STA $40001C,x[$40:2D1C] A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/07AD 9F 1E 00 40 STA $40001E,x[$40:2D1E] A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/07B1 9F 22 00 40 STA $400022,x[$40:2D22] A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/07B5 9F 20 00 40 STA $400020,x[$40:2D20] A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/07B9 9F 24 00 40 STA $400024,x[$40:2D24] A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/07BD 9F 26 00 40 STA $400026,x[$40:2D26] A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/07C1 A9 00 80    LDA #$8000              A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/07C4 9F 40 00 40 STA $400040,x[$40:2D40] A:8000 X:2D00 Y:0020 P:eNvmxdIzc
C2/07C8 9F 42 00 40 STA $400042,x[$40:2D42] A:8000 X:2D00 Y:0020 P:eNvmxdIzc
C2/07CC 9F 44 00 40 STA $400044,x[$40:2D44] A:8000 X:2D00 Y:0020 P:eNvmxdIzc
C2/07D0 A9 FF FF    LDA #$FFFF              A:8000 X:2D00 Y:0020 P:eNvmxdIzc
C2/07D3 9F 50 00 40 STA $400050,x[$40:2D50] A:FFFF X:2D00 Y:0020 P:eNvmxdIzc
C2/07D7 A9 00 00    LDA #$0000              A:FFFF X:2D00 Y:0020 P:eNvmxdIzc
C2/07DA 9F 7E 00 40 STA $40007E,x[$40:2D7E] A:0000 X:2D00 Y:0020 P:envmxdIZc
C2/07DE 60          RTS                     A:0000 X:2D00 Y:0020 P:envmxdIZc
----------------------------------------------------------------
Weapon/spell/run away animations
C2/07DF A5 E2       LDA $E2    [$00:00E2]   A:00F5 X:2500 Y:2500
C2/07E1 0A          ASL A                   A:0000 X:2500 Y:2500
C2/07E2 A8          TAY                     A:0000 X:2500 Y:2500
C2/07E3 B7 EA       LDA [$EA],y[$F5:0002]   A:0000 X:2500 Y:0000
C2/07E5 18          CLC                     A:0402 X:2500 Y:0000
C2/07E6 65 E4       ADC $E4    [$00:00E4]   A:0402 X:2500 Y:0000
C2/07E8 85 DA       STA $DA    [$00:00DA]   A:0408 X:2500 Y:0000
C2/07EA A5 EC       LDA $EC    [$00:00EC]   A:0408 X:2500 Y:0000
C2/07EC 85 DC       STA $DC    [$00:00DC]   A:00F5 X:2500 Y:0000
C2/07EE A7 DA       LDA [$DA]  [$F5:0408]   A:00F5 X:2500 Y:0000
C2/07F0 9F 02 00 40 STA $400002,x[$40:2502] A:0488 X:2500 Y:0000
C2/07F4 A5 EC       LDA $EC    [$00:00EC]   A:0488 X:2500 Y:0000
C2/07F6 9F 04 00 40 STA $400004,x[$40:2504] A:00F5 X:2500 Y:0000
C2/07FA 60          RTS                     A:00F5 X:2500 Y:0000
----------------------------------------------------------------
C2/0C01 86 64       STX $64    [$00:0064]   A:4000 X:0014 Y:FF0F P:envmxdIzC
C2/0C03 BF B1 01 C2 LDA $C201B1,x[$C2:01C5] A:4000 X:0014 Y:FF0F P:envmxdIzC
C2/0C07 F0 31       BEQ $31    [$0C3A]      A:2500 X:0014 Y:FF0F P:envmxdIzC
C2/0C09 AA          TAX                     A:2500 X:0014 Y:FF0F P:envmxdIzC
C2/0C0A BF 00 00 40 LDA $400000,x[$40:2500] A:2500 X:2500 Y:FF0F P:envmxdIzC
C2/0C0E D0 31       BNE $31    [$0C41]      A:0000 X:2500 Y:FF0F P:envmxdIZC
C2/0C10 A6 64       LDX $64    [$00:0064]   A:0000 X:2500 Y:FF0F P:envmxdIZC
C2/0C12 E8          INX                     A:0000 X:0014 Y:FF0F P:envmxdIzC
C2/0C13 E8          INX                     A:0000 X:0015 Y:FF0F P:envmxdIzC
C2/0C14 80 EB       BRA $EB    [$0C01]      A:0000 X:0016 Y:FF0F P:envmxdIzC

C2/0C41 86 66       STX $66    [$00:0066]   A:0080 X:2C00 Y:FF0F P:envmxdIzC
C2/0C43 BF 02 00 40 LDA $400002,x[$40:2C02] A:0080 X:2C00 Y:FF0F P:envmxdIzC
C2/0C47 85 60       STA $60    [$00:0060]   A:EC89 X:2C00 Y:FF0F P:eNvmxdIzC
C2/0C49 BF 04 00 40 LDA $400004,x[$40:2C04] A:EC89 X:2C00 Y:FF0F P:eNvmxdIzC
C2/0C4D 85 62       STA $62    [$00:0062]   A:00C2 X:2C00 Y:FF0F P:envmxdIzC
C2/0C4F A7 60       LDA [$60]  [$C2:EC89]   A:00C2 X:2C00 Y:FF0F P:envmxdIzC
C2/0C51 29 FF 00    AND #$00FF              A:21CA X:2C00 Y:FF0F P:envmxdIzC
C2/0C54 A6 66       LDX $66    [$00:0066]   A:00CA X:2C00 Y:FF0F P:envmxdIzC
C2/0C56 9F 3C 00 40 STA $40003C,x[$40:2C3C] A:00CA X:2C00 Y:FF0F P:envmxdIzC
C2/0C5A 0A          ASL A                   A:00CA X:2C00 Y:FF0F
C2/0C5B AA          TAX                     A:0194 X:2C00 Y:FF0F
C2/0C5C 7C 3D 0D    JMP ($0D3D,x)[$C2:6624] A:0194 X:0194 Y:FF0F 
----------------------------------------------------------------
C2/20DE 4C 5F 0C
Processor
C2/0C5F A6 66       LDX $66    [$00:0066]   A:0088 X:2480 Y:2480
C2/0C61 BF 00 00 40 LDA $400000,x[$40:2480] A:0088 X:2480 Y:2480
C2/0C65 D0 03       BNE $03    [$0C6A]      A:0088 X:2480 Y:2480
C2/0C6A A5 60       LDA $60    [$00:0060]   A:0088 X:2480 Y:2480
C2/0C6C 9F 02 00 40 STA $400002,x[$40:2482] A:0464 X:2480 Y:2480
C2/0C70 A5 62       LDA $62    [$00:0062]   A:0464 X:2480 Y:2480
C2/0C72 9F 04 00 40 STA $400004,x[$40:2484] A:00F5 X:2480 Y:2480
C2/0C76 A9 00 40    LDA #$4000              A:00F5 X:2480 Y:2480
C2/0C79 0C 06 07    TSB $0706  [$00:0706]   A:4000 X:2480 Y:2480
C2/0C7C BF 00 00 40 LDA $400000,x[$40:2480] A:4000 X:2480 Y:2480
C2/0C80 89 80 00    BIT #$0080              A:0088 X:2480 Y:2480
C2/0C83 F0 19       BEQ $19    [$0C9E]      A:0088 X:2480 Y:2480
C2/0C85 8E B0 30    STX $30B0  [$00:30B0]   A:0088 X:2480 Y:2480
C2/0C88 A9 FE 08    LDA #$08FE              A:0088 X:2480 Y:2480
C2/0C8B 8D 6E 30    STA $306E  [$00:306E]   A:08FE X:2480 Y:2480
C2/0C8E 9C 60 30    STZ $3060  [$00:3060]   A:08FE X:2480 Y:2480
C2/0C91 A9 01 00    LDA #$0001              A:08FE X:2480 Y:2480
C2/0C94 0C 00 30    TSB $3000  [$00:3000]   A:0001 X:2480 Y:2480
C2/0C97 22 00 08 00 JSL $000800[$00:0800]   A:0001 X:2480 Y:2480
C2/0C9B 9C 60 30    STZ $3060  [$00:3060]   A:0001 X:2480 Y:2480
C2/0C9E BF 2C 00 40 LDA $40002C,x[$40:24AC] A:0001 X:2480 Y:2480
C2/0CA2 C9 FF FF    CMP #$FFFF              A:FFFF X:2480 Y:2480
C2/0CA5 F0 44       BEQ $44    [$0CEB]      A:FFFF X:2480 Y:2480
C2/0CEB BF 2A 00 40 LDA $40002A,x[$40:24AA] A:FFFF X:2480 Y:2480
C2/0CEF C9 FF FF    CMP #$FFFF              A:FFFF X:2480 Y:2480
C2/0CF2 F0 13       BEQ $13    [$0D07]      A:FFFF X:2480 Y:2480
C2/0D07 A9 00 40    LDA #$4000              A:FFFF X:2480 Y:2480
C2/0D0A 1C 06 07    TRB $0706  [$00:0706]   A:4000 X:2480 Y:2480
C2/0D0D A6 64       LDX $64    [$00:0064]   A:4000 X:2480 Y:2480
C2/0D0F E8          INX                     A:4000 X:0012 Y:2480
C2/0D10 E8          INX                     A:4000 X:0013 Y:2480
C2/0D11 6C 68 00    JMP ($0068)[$C2:0C01]   A:4000 X:0014 Y:2480

C2/0C01 86 64       STX $64    [$00:0064]   A:4000 X:0014 Y:2480
C2/0C03 BF B1 01 C2 LDA $C201B1,x[$C2:01C5] A:4000 X:0014 Y:2480
C2/0C07 F0 31       BEQ $31    [$0C3A]      A:2500 X:0014 Y:2480
C2/0C09 AA          TAX                     A:2500 X:0014 Y:2480
C2/0C0A BF 00 00 40 LDA $400000,x[$40:2500] A:2500 X:2500 Y:2480
C2/0C0E D0 31       BNE $31    [$0C41]      A:0000 X:2500 Y:2480
C2/0C10 A6 64       LDX $64    [$00:0064]   A:0000 X:2500 Y:2480
C2/0C12 E8          INX                     A:0000 X:0014 Y:2480
C2/0C13 E8          INX                     A:0000 X:0015 Y:2480
C2/0C14 80 EB       BRA $EB    [$0C01]      A:0000 X:0016 Y:2480

...until X:0060 ... (only used for spells??? timing???)
C2/0C3A A9 00 80    LDA #$8000              A:0000 X:0060 Y:2480
C2/0C3D 1C 06 07    TRB $0706  [$00:0706]   A:8000 X:0060 Y:2480
C2/0C40 60          RTS                     A:8000 X:0060 Y:2480
(only used for physical attacks??? timing???)
C2/0C41 86 66       STX $66    [$00:0066]   A:0080 X:2C00 Y:FF0F P:envmxdIzC
$C2/0C43 BF 02 00 40 LDA $400002,x[$40:2C02] A:0080 X:2C00 Y:FF0F P:envmxdIzC
$C2/0C47 85 60       STA $60    [$00:0060]   A:EC89 X:2C00 Y:FF0F P:eNvmxdIzC
$C2/0C49 BF 04 00 40 LDA $400004,x[$40:2C04] A:EC89 X:2C00 Y:FF0F P:eNvmxdIzC
$C2/0C4D 85 62       STA $62    [$00:0062]   A:00C2 X:2C00 Y:FF0F

$C2/0C4F A7 60       LDA [$60]  [$C2:EC89]   A:00C2 X:2C00 Y:FF0F P:envmxdIzC
$C2/0C51 29 FF 00    AND #$00FF              A:21CA X:2C00 Y:FF0F P:envmxdIzC
$C2/0C54 A6 66       LDX $66    [$00:0066]   A:00CA X:2C00 Y:FF0F P:envmxdIzC
$C2/0C56 9F 3C 00 40 STA $40003C,x[$40:2C3C] A:00CA X:2C00 Y:FF0F P:envmxdIzC
$C2/0C5A 0A          ASL A                   A:00CA X:2C00 Y:FF0F P:envmxdIzC
$C2/0C5B AA          TAX                     A:0194 X:2C00 Y:FF0F P:envmxdIzc
$C2/0C5C 7C 3D 0D    JMP ($0D3D,x)[$C2:6624] A:0194 X:0194 Y:FF0F

Event/Animation function pointers
NOTES: Follow the number on the right by using doc_ani-code.txt.
C2/0D3D

00>	65 10
01>	E5 10
02>	AF 12
03>	B2 12
04>	F7 12 ;pause script, resume when...
05>	75 13
06>	98 13
07>	E3 13
08>	EF 13
09>	9F 14
0A>	A9 14
0B>	AE 14
0C>	21 16
0D>	37 1B
0E>	CF 1B
0F>	F0 1B
10>	2A 1C
11>	4E 1C
12>	69 1C
13>	F5 1C
14>	24 1F *???
15>	A4 24 *processor stuff
16>	D7 27 *processor stuff
17>	E9 27
18>	5F 28
19>	77 28
1A>	AE 28
1B>	D4 28
1C>	FD 28
1D>	23 29
1E>	4C 29
1F>	69 29
20>	89 29
21>	2E 2B
22>	53 2B
23>	7C 2B
24>	A1 2B
25>	D6 2B
26>	07 2C
27>	3C 2C
28>	6D 2C
29>	A2 2C
2A>	D3 2C
2B>	08 2D
2C>	39 2D
2D>	67 2D
2E>	91 2D
2F>	BF 2D
30>	E9 2D
31>	0D 2E
32>	2D 2E
33>	51 2E
34>	71 2E
35>	92 2E
36>	B0 2E
37>	D5 2E
38>	FD 2E
39>	2A 2F
3A>	57 2F *playback animation: target gets hit 
3B>	E2 2F
3C>	F4 2F
3D>	0C 30
3E>	36 30 Display damage
3F>	37 31
40>	82 31
41>	A8 31
42>	CE 31
43>	CA 32 *playback sequence for object's current sprite (set by command 03)
44>	18 33
45>	5D 33
46>	6B 33 Check for mortal status, if all down set game over
47>	96 33
48>	D2 33
49>	F6 33
4A>	77 3B
4B>	D6 36
4C>	7E 3A
4D>	F9 3A
4E>	08 3C
4F>	20 3C ???
50>	48 3C
51>	6D 3C *jump to address if target not dead
52>	92 3C
53>	B1 3C *???
54>	D0 3C
55>	ED 3C
56>	0A 3D
57>	27 3D
58>	4A 3D
59>	76 3D
5A>	88 3D
5B>	9A 3D
5C>	AD 3D
5D>	C0 3D
5E>	B7 3E
5F>	EF 3E
60>	36 3F
61>	7D 3F
62>	82 3F
63>	3D 41
64>	73 42
65>	A7 42
66>	C1 42
67>	F8 42
68>	2B 43
69>	61 43
6A>	6F 43
6B>	97 43
6C>	B8 43
6D>	62 45	;Animation: Recoil
6E>	84 46
6F>	1A 47
70>	8D 48
71>	9E 48
72>	AF 48
73>	24 49
74>	73 49
75>	8B 49
76>	A3 49
77>	B1 49
78>	9A 4A
79>	01 4B
7A>	42 4B	;Display battle dialogue
7B>	DE 4B
7C>	EB 4B
7D>	36 4C	;??? game over stuff
7E>	3C 51
7F>	72 51	;Monster: Sleep/Idle animation
80>	BC 51
81>	23 52
82>	3E 52
83>	0F 53
84>	3A 53
85>	FC 53
86>	8C 54
87>	C4 54
88>	D5 54
89>	EC 54
8A>	03 55
8B>	3C 55
8C>	57 55
8D>	9C 55
8E>	E1 55
8F>	26 56
90>	E9 56
91>	06 57
92>	11 57
93>	1C 57
94>	27 57
95>	0A 59
96>	33 59
97>	93 59
98>	D7 59
99>	47 5A
9A>	8C 5A
9B>	9A 5A
9C>	0D 5B
9D>	52 5B
9E>	76 5B
9F>	C4 5B
A0>	FD 5B
A1>	08 5C
A2>	54 5C
A3>	5D 5D
A4>	86 5D
A5>	28 5E
A6>	37 5E
A7>	4D 5E ;??? weapon timing?
A8>	BE 5E
A9>	D6 5E
AA>	E1 5E
AB>	00 5F
AC>	28 5F
AD>	55 5F
AE>	60 5F
AF>	8B 5F
B0>	BB 5F
B1>	F3 5F
B2>	2D 60
B3>	3F 60
B4>	51 60
B5>	6E 60
B6>	96 60
B7>	BE 60
B8>	D0 60
B9>	2E 61
BA>	D0 61
BB>	06 62
BC>	2E 62
BD>	66 62
BE>	9E 62
BF>	DD 62
C0>	2F 63
C1>	68 63
C2>	A0 63
C3>	1D 64
C4>	91 64
C5>	BB 64
C6>	C9 64
C7>	FE 64
C8>	70 65
C9>	DC 65
CA>	24 66
CB>	5A 66
CC>	90 66
CD>	9C 66
CE>	A8 66
CF>	13 67
D0>	6E 67
D1>	FB 67
D2>	03 68
D3>	2D 68
D4>	BB 68
D5>	70 69 ; Summon Monster
D6>	23 6A
D7>	60 6A
D8>	67 6A
D9>	8D 6A
DA>	C6 6A
DB>	0E 6B
DC>	4D 6B Psychopath palette change (displays sky blue numerals)
DD>	66 6B
DE>	E0 6B
DF>	21 6C
E0>	69 6C
E1>	9C 6C
E2>	E4 6C
E3>	04 6D
E4>	18 6D
E5>	54 6D
E6>	75 6D	;Resets status of ally?
E7>	1F 0F
E8>	1F 0F
E9>	1F 0F
EA>	22 0F
EB>	22 0F
EC>	74 0F
ED>	DC 0F
EE>	22 0F
EF>	22 0F
F0>	29 10




C2/0C5F A6 66       LDX $66    [$00:0066]   A:E800 X:00A8 Y:FF0F P:eNvmxdIZc
C2/0C61 BF 00 00 40 LDA $400000,x[$40:2480] A:E800 X:2480 Y:FF0F P:envmxdIzc
C2/0C65 D0 03       BNE $03    [$0C6A]      A:0088 X:2480 Y:FF0F P:envmxdIzc
C2/0C6A A5 60       LDA $60    [$00:0060]   A:0088 X:2480 Y:FF0F P:envmxdIzc
C2/0C6C 9F 02 00 40 STA $400002,x[$40:2482] A:046A X:2480 Y:FF0F P:envmxdIzc
C2/0C70 A5 62       LDA $62    [$00:0062]   A:046A X:2480 Y:FF0F P:envmxdIzc
C2/0C72 9F 04 00 40 STA $400004,x[$40:2484] A:00F5 X:2480 Y:FF0F P:envmxdIzc
C2/0C76 A9 00 40    LDA #$4000              A:00F5 X:2480 Y:FF0F P:envmxdIzc
C2/0C79 0C 06 07    TSB $0706  [$00:0706]   A:4000 X:2480 Y:FF0F P:envmxdIzc
C2/0C7C BF 00 00 40 LDA $400000,x[$40:2480] A:4000 X:2480 Y:FF0F P:envmxdIZc
C2/0C80 89 80 00    BIT #$0080              A:0088 X:2480 Y:FF0F P:envmxdIzc
C2/0C83 F0 19       BEQ $19    [$0C9E]      A:0088 X:2480 Y:FF0F P:envmxdIzc
C2/0C85 8E B0 30    STX $30B0  [$00:30B0]   A:0088 X:2480 Y:FF0F P:envmxdIzc
C2/0C88 A9 FE 08    LDA #$08FE              A:0088 X:2480 Y:FF0F P:envmxdIzc
C2/0C8B 8D 6E 30    STA $306E  [$00:306E]   A:08FE X:2480 Y:FF0F P:envmxdIzc
C2/0C8E 9C 60 30    STZ $3060  [$00:3060]   A:08FE X:2480 Y:FF0F P:envmxdIzc
C2/0C91 A9 01 00    LDA #$0001              A:08FE X:2480 Y:FF0F P:envmxdIzc
C2/0C94 0C 00 30    TSB $3000  [$00:3000]   A:0001 X:2480 Y:FF0F P:envmxdIzc
C2/0C97 22 00 08 00 JSL $000800[$00:0800]   A:0001 X:2480 Y:FF0F
C2/0C9B 9C 60 30    STZ $3060  [$00:3060]   A:0001 X:2480 Y:FF0F P:envmxdIZc
C2/0C9E BF 2C 00 40 LDA $40002C,x[$40:24AC] A:0001 X:2480 Y:FF0F P:envmxdIZc
C2/0CA2 C9 FF FF    CMP #$FFFF              A:FFFF X:2480 Y:FF0F P:eNvmxdIzc
C2/0CA5 F0 44       BEQ $44    [$0CEB]      A:FFFF X:2480 Y:FF0F P:envmxdIZC

C2/0CEB BF 2A 00 40 LDA $40002A,x[$40:24AA] A:FFFF X:2480 Y:FF0F P:envmxdIZC
C2/0CEF C9 FF FF    CMP #$FFFF              A:FFFF X:2480 Y:FF0F P:eNvmxdIzC
C2/0CF2 F0 13       BEQ $13    [$0D07]      A:FFFF X:2480 Y:FF0F P:envmxdIZC
C2/0D07 A9 00 40    LDA #$4000              A:FFFF X:2480 Y:FF0F P:envmxdIZC
C2/0D0A 1C 06 07    TRB $0706  [$00:0706]   A:4000 X:2480 Y:FF0F P:envmxdIzC
C2/0D0D A6 64       LDX $64    [$00:0064]   A:4000 X:2480 Y:FF0F P:envmxdIzC
C2/0D0F E8          INX                     A:4000 X:0012 Y:FF0F
C2/0D10 E8          INX                     A:4000 X:0013 Y:FF0F
C2/0D11 6C 68 00    JMP ($0068)[$C2:0C01]   A:4000 X:0014 Y:FF0F ;timing???
----------------------------------------------------------------
DOC_ANI-CODE: ;pause script, resume when...
$C2/12F7 A6 66       LDX $66    [$00:0066]   A:0008 X:0008 Y:0407 P:envmxdIzc
$C2/12F9 A0 01 00    LDY #$0001              A:0008 X:2480 Y:0407 P:envmxdIzc
$C2/12FC B7 60       LDA [$60],y[$F5:047A]   A:0008 X:2480 Y:0001 P:envmxdIzc
$C2/12FE 85 E0       STA $E0    [$00:00E0]   A:2010 X:2480 Y:0001 P:envmxdIzc
$C2/1300 89 08 00    BIT #$0008              A:2010 X:2480 Y:0001 P:envmxdIzc
$C2/1303 F0 0B       BEQ $0B    [$1310]      A:2010 X:2480 Y:0001 P:envmxdIZc
$C2/1310 89 07 00    BIT #$0007              A:2010 X:2480 Y:0001 P:envmxdIZc
$C2/1313 F0 11       BEQ $11    [$1326]      A:2010 X:2480 Y:0001 P:envmxdIZc
$C2/1326 89 10 00    BIT #$0010              A:2010 X:2480 Y:0001 P:envmxdIZc
$C2/1329 D0 03       BNE $03    [$132E]      A:2010 X:2480 Y:0001 P:envmxdIzc
$C2/132E 9B          TXY                     A:2010 X:2480 Y:0001 P:envmxdIzc
$C2/132F BF 08 00 40 LDA $400008,x[$40:2488] A:2010 X:2480 Y:2480 P:envmxdIzc
$C2/1333 0A          ASL A                   A:0000 X:2480 Y:2480 P:envmxdIZc
$C2/1334 AA          TAX                     A:0000 X:2480 Y:2480 P:envmxdIZc
$C2/1335 7C 38 13    JMP ($1338,x)[$C2:133C] A:0000 X:0000 Y:2480 P:envmxdIZc
$C2/133C BB          TYX                     A:0000 X:0000 Y:2480 P:envmxdIZc
$C2/133D A0 02 00    LDY #$0002              A:0000 X:2480 Y:2480 P:envmxdIzc
$C2/1340 B7 60       LDA [$60],y[$F5:047B]   A:0000 X:2480 Y:0002 P:envmxdIzc
$C2/1342 9F 06 00 40 STA $400006,x[$40:2486] A:0020 X:2480 Y:0002 P:envmxdIzc
$C2/1346 A9 01 00    LDA #$0001              A:0020 X:2480 Y:0002 P:envmxdIzc
$C2/1349 9F 08 00 40 STA $400008,x[$40:2488] A:0001 X:2480 Y:0002 P:envmxdIzc
$C2/134D 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:0001 X:2480 Y:0002 P:envmxdIzc

----------------------------------------------------------------
...
C2/1BCF A6 66       LDX $66    [$00:0066]   A:001C X:001C Y:0001 P:enVmxdIzc
$C2/1BD1 BF 00 00 40 LDA $400000,x[$40:2480] A:001C X:2480 Y:0001 P:enVmxdIzc
$C2/1BD5 29 F8 FF    AND #$FFF8              A:008F X:2480 Y:0001 P:enVmxdIzc
$C2/1BD8 9F 00 00 40 STA $400000,x[$40:2480] A:0088 X:2480 Y:0001 P:enVmxdIzc
$C2/1BDC A9 00 80    LDA #$8000              A:0088 X:2480 Y:0001 P:enVmxdIzc
$C2/1BDF 9F 40 00 40 STA $400040,x[$40:24C0] A:8000 X:2480 Y:0001 P:eNVmxdIzc
$C2/1BE3 9F 42 00 40 STA $400042,x[$40:24C2] A:8000 X:2480 Y:0001 P:eNVmxdIzc
$C2/1BE7 9F 44 00 40 STA $400044,x[$40:24C4] A:8000 X:2480 Y:0001 P:eNVmxdIzc
$C2/1BEB E6 60       INC $60    [$00:0060]   A:8000 X:2480 Y:0001 P:eNVmxdIzc
$C2/1BED 4C 4F 0C    JMP $0C4F  [$C2:0C4F]   A:8000 X:2480 Y:0001

...
C2/1BF0 A6 66       LDX $66    [$00:0066]   A:001E X:001E Y:0001 P:enVmxdIzc
$C2/1BF2 A9 00 00    LDA #$0000              A:001E X:2480 Y:0001 P:enVmxdIzc
$C2/1BF5 9F 30 00 40 STA $400030,x[$40:24B0] A:0000 X:2480 Y:0001 P:enVmxdIZc
$C2/1BF9 9F 34 00 40 STA $400034,x[$40:24B4] A:0000 X:2480 Y:0001 P:enVmxdIZc
$C2/1BFD 9F 38 00 40 STA $400038,x[$40:24B8] A:0000 X:2480 Y:0001 P:enVmxdIZc
$C2/1C01 9F 10 00 40 STA $400010,x[$40:2490] A:0000 X:2480 Y:0001 P:enVmxdIZc
$C2/1C05 9F 12 00 40 STA $400012,x[$40:2492] A:0000 X:2480 Y:0001 P:enVmxdIZc
$C2/1C09 9F 14 00 40 STA $400014,x[$40:2494] A:0000 X:2480 Y:0001 P:enVmxdIZc
$C2/1C0D 9F 18 00 40 STA $400018,x[$40:2498] A:0000 X:2480 Y:0001 P:enVmxdIZc
$C2/1C11 9F 1A 00 40 STA $40001A,x[$40:249A] A:0000 X:2480 Y:0001 P:enVmxdIZc
$C2/1C15 9F 1C 00 40 STA $40001C,x[$40:249C] A:0000 X:2480 Y:0001 P:enVmxdIZc
$C2/1C19 9F 20 00 40 STA $400020,x[$40:24A0] A:0000 X:2480 Y:0001 P:enVmxdIZc
$C2/1C1D 9F 22 00 40 STA $400022,x[$40:24A2] A:0000 X:2480 Y:0001 P:enVmxdIZc
$C2/1C21 9F 24 00 40 STA $400024,x[$40:24A4] A:0000 X:2480 Y:0001 P:enVmxdIZc
$C2/1C25 E6 60       INC $60    [$00:0060]   A:0000 X:2480 Y:0001 P:enVmxdIZc
$C2/1C27 4C 4F 0C    JMP $0C4F  [$C2:0C4F]   A:0000 X:2480 Y:0001

...
$C2/1CF5 A6 66       LDX $66    [$00:0066]   A:0026 X:0026 Y:2480
$C2/1CF7 AD 00 07    LDA $0700  [$00:0700]   A:0026 X:2000 Y:2480
$C2/1CFA 89 00 40    BIT #$4000              A:E000 X:2000 Y:2480
$C2/1CFD D0 08       BNE $08    [$1D07]      A:E000 X:2000 Y:2480
$C2/1D07 89 00 08    BIT #$0800              A:E000 X:2000 Y:2480
$C2/1D0A F0 03       BEQ $03    [$1D0F]      A:E000 X:2000 Y:2480
$C2/1D0F 89 80 00    BIT #$0080              A:E000 X:2000 Y:2480
$C2/1D12 D0 0A       BNE $0A    [$1D1E]      A:E000 X:2000 Y:2480
$C2/1D14 9B          TXY                     A:E000 X:2000 Y:2480
$C2/1D15 BF 08 00 40 LDA $400008,x[$40:2008] A:E000 X:2000 Y:2000
$C2/1D19 0A          ASL A                   A:0002 X:2000 Y:2000
$C2/1D1A AA          TAX                     A:0004 X:2000 Y:2000
$C2/1D1B 7C C1 1D    JMP ($1DC1,x)[$C2:1E38] A:0004 X:0004 Y:2000

turn start???
C2/1D1E 9B          TXY                     A:E080 X:2000 Y:2480
C2/1D1F BF 08 00 40 LDA $400008,x[$40:2008] A:E080 X:2000 Y:2000
C2/1D23 0A          ASL A                   A:0000 X:2000 Y:2000
C2/1D24 AA          TAX                     A:0000 X:2000 Y:2000
C2/1D25 7C 94 1E    JMP ($1E94,x)[$C2:1E9A] A:0000 X:0000 Y:2000

timing???
C2/1D28 A2 00 00    LDX #$0000              A:E800 X:2000 Y:FF0F P:eNvmxdIzc
$C2/1D2B 86 E0       STX $E0    [$00:00E0]   A:E800 X:0000 Y:FF0F P:envmxdIZc

$C2/1D2D 9B          TXY                     A:E800 X:0000 Y:FF0F P:envmxdIZc
$C2/1D2E BD 30 07    LDA $0730,x[$00:0730]   A:E800 X:0000 Y:0000 P:envmxdIZc
$C2/1D31 F0 18       BEQ $18    [$1D4B]      A:FA80 X:0000 Y:0000 P:eNvmxdIzc
$C2/1D33 AA          TAX                     A:FA80 X:0000 Y:0000 P:eNvmxdIzc
$C2/1D34 BF 3E 00 7E LDA $7E003E,x[$7E:FABE] A:FA80 X:FA80 Y:0000 P:eNvmxdIzc
$C2/1D38 AA          TAX                     A:2480 X:FA80 Y:0000 P:envmxdIzc
$C2/1D39 BF 00 00 40 LDA $400000,x[$40:2480] A:2480 X:2480 Y:0000 P:envmxdIzc
$C2/1D3D F0 7A       BEQ $7A    [$1DB9]      A:0088 X:2480 Y:0000 P:envmxdIzc
$C2/1D3F 89 20 00    BIT #$0020              A:0088 X:2480 Y:0000 P:envmxdIzc
$C2/1D42 F0 02       BEQ $02    [$1D46]      A:0088 X:2480 Y:0000 P:envmxdIZc
$C2/1D46 BB          TYX                     A:0088 X:2480 Y:0000 P:envmxdIZc
$C2/1D47 E8          INX                     A:0088 X:0000 Y:0000 P:envmxdIZc
$C2/1D48 E8          INX                     A:0088 X:0001 Y:0000 P:envmxdIzc
$C2/1D49 80 E2       BRA $E2    [$1D2D]      A:0088 X:0002 Y:0000 P:envmxdIzc

C2/1D4B A5 E0       LDA $E0    [$00:00E0]   A:0000 X:0002 Y:0002 P:envmxdIZc
C2/1D4D F0 03       BEQ $03    [$1D52]      A:0000 X:0002 Y:0002 P:envmxdIZc
C2/1D52 AD 00 07    LDA $0700  [$00:0700]   A:0000 X:0002 Y:0002 P:envmxdIZc
C2/1D55 89 00 04    BIT #$0400              A:E800 X:0002 Y:0002 P:eNvmxdIzc
C2/1D58 D0 09       BNE $09    [$1D63]      A:E800 X:0002 Y:0002 P:eNvmxdIZc
C2/1D5A 09 00 04    ORA #$0400              A:E800 X:0002 Y:0002 P:eNvmxdIZc
C2/1D5D 8D 00 07    STA $0700  [$00:0700]   A:EC00 X:0002 Y:0002 P:eNvmxdIzc
C2/1D60 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:EC00 X:0002 Y:0002 P:eNvmxdIzc

...
$C2/1E38 AE 02 07    LDX $0702  [$00:0702]   A:0004 X:0004 Y:2000
$C2/1E3B BF 00 3D 40 LDA $403D00,x[$40:3D00] A:0004 X:0000 Y:2000
$C2/1E3F 89 01 00    BIT #$0001              A:FA80 X:0000 Y:2000
$C2/1E42 D0 14       BNE $14    [$1E58]      A:FA80 X:0000 Y:2000
$C2/1E44 AA          TAX                     A:FA80 X:0000 Y:2000
$C2/1E45 BF 3E 00 7E LDA $7E003E,x[$7E:FABE] A:FA80 X:FA80 Y:2000
$C2/1E49 AA          TAX                     A:2480 X:FA80 Y:2000
$C2/1E4A BF 00 00 40 LDA $400000,x[$40:2480] A:2480 X:2480 Y:2000
$C2/1E4E F0 3C       BEQ $3C    [$1E8C]      A:00C8 X:2480 Y:2000
$C2/1E50 89 40 00    BIT #$0040              A:00C8 X:2480 Y:2000
$C2/1E53 F0 03       BEQ $03    [$1E58]      A:00C8 X:2480 Y:2000
$C2/1E55 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:00C8 X:2480 Y:2000


...
C2/1E58 AE 02 07    LDX $0702  [$00:0702]   A:008F X:2480 Y:2000
C2/1E5B E8          INX                     A:008F X:0000 Y:2000
C2/1E5C E8          INX                     A:008F X:0001 Y:2000
C2/1E5D 8E 02 07    STX $0702  [$00:0702]   A:008F X:0002 Y:2000
C2/1E60 A9 00 20    LDA #$2000              A:008F X:0002 Y:2000
C2/1E63 1C 00 07    TRB $0700  [$00:0700]   A:2000 X:0002 Y:2000
C2/1E66 AD 00 07    LDA $0700  [$00:0700]   A:2000 X:0002 Y:2000
C2/1E69 89 02 00    BIT #$0002              A:C000 X:0002 Y:2000
C2/1E6C D0 11       BNE $11    [$1E7F]      A:C000 X:0002 Y:2000
C2/1E6E BF 00 3D 40 LDA $403D00,x[$40:3D02] A:C000 X:0002 Y:2000
C2/1E72 F0 0B       BEQ $0B    [$1E7F]      A:FC00 X:0002 Y:2000
C2/1E74 BB          TYX                     A:FC00 X:0002 Y:2000
C2/1E75 A9 01 00    LDA #$0001              A:FC00 X:2000 Y:2000
C2/1E78 9F 08 00 40 STA $400008,x[$40:2008] A:0001 X:2000 Y:2000
C2/1E7C 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:0001 X:2000 Y:2000

...
C2/1E9A AE 50 07    LDX $0750  [$00:0750]   A:0000 X:0000 Y:2000 P:envmxdIZc
$C2/1E9D BF 3E 00 7E LDA $7E003E,x[$7E:FC3E] A:0000 X:FC00 Y:2000 P:eNvmxdIzc
$C2/1EA1 AA          TAX                     A:2400 X:FC00 Y:2000 P:envmxdIzc
$C2/1EA2 BF 00 00 40 LDA $400000,x[$40:2400] A:2400 X:2400 Y:2000 P:envmxdIzc
$C2/1EA6 89 40 00    BIT #$0040              A:00C8 X:2400 Y:2000 P:envmxdIzc
$C2/1EA9 F0 03       BEQ $03    [$1EAE]      A:00C8 X:2400 Y:2000 P:envmxdIzc
$C2/1EAB 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:00C8 X:2400 Y:2000
----------------------------------------------------------------
DOC_ANI-CODE: <14> 24 1F *
DISASSEMBLER NOTE: In the animation scripts, you can view the faint animation by going to address 35/0468. It's called there.

C2/1F24 A6 66
C2/1F26 9B          TXY                     A:0028 X:2480 Y:0001 P:enVmxdIzc
C2/1F27 BF 08 00 40 LDA $400008,x[$40:2488] A:0028 X:2480 Y:2480 P:enVmxdIzc
C2/1F2B 0A          ASL A                   A:0000 X:2480 Y:2480 P:enVmxdIZc
C2/1F2C AA          TAX                     A:0000 X:2480 Y:2480 P:enVmxdIZc
C2/1F2D 7C 30 1F    JMP ($1F30,x)[$C2:1F44] A:0000 X:0000 Y:2480 P:enVmxdIZc
	44 1F	;checks if ally is down or disabled?
	A3 20	;
	E1 20	;
	1F 21	;
	67 21	;
	B3 21	;
	D5 21	;
	3F 23	;
	56 23	;
	7A 23	;

C2/1F44 BB
	BF 00 00 40
	89 40 00
	D0 56		;jumps to C2/1FB2 (sets bit7 to mortal status and faint frame to E4)


C2/1F53 BF 00 00 7E LDA $7E0000,x[$7E:FA80] A:FA80 X:FA80 Y:2480 
C2/1F57 89 40 00    BIT #$0040              A:0040 X:FA80 Y:2480
C2/1F5A D0 56       BNE $56    [$1FB2]      A:0040 X:FA80 Y:2480
...
C2/1FB2 09 80 00    ORA #$0080              A:0040 X:FA80 Y:2480
C2/1FB5 9F 00 00 7E STA $7E0000,x[$7E:FA80] A:00C0 X:FA80 Y:2480 
C2/1FB9 A9 04 00    LDA #$0004              A:00C0 X:FA80 Y:2480 
C2/1FBC 85 E4       STA $E4    [$00:00E4]   A:0004 X:FA80 Y:2480 
C2/1FBE 4C B5 23    JMP $23B5  [$C2:23B5]   A:0004 X:FA80 Y:2480 ;Load animations

----------------------------------------------------------------

load ailments
C2/1FC1 BF 0A 00 40 LDA $40000A,x[$40:248A] A:E000 X:2480 Y:2480
C2/1FC5 AA          TAX                     A:FA80 X:2480 Y:2480
C2/1FC6 22 15 A0 C2 JSL $C2A015[$C2:A015]   A:FA80 X:FA80 Y:2480 ;Ally: Turn Start
C2/1FCA BF 40 00 7E LDA $7E0040,x[$7E:FAC0] A:8080 X:FA80 Y:2480 ;loads status ailment
C2/1FCE 29 FF 00    AND #$00FF              A:0300 X:FA80 Y:2480 ;isolate
C2/1FD1 D0 2C       BNE $2C    [$1FFF]      A:0000 X:FA80 Y:2480 ;Ally: Ailments and what they do

If there is no ailment, immediately run the following
C2/1FD3 A9 31 00    LDA #$0031              A:0000 X:FA80 Y:2480
C2/1FD6 EB          XBA                     A:0031 X:FA80 Y:2480
C2/1FD7 09 01 00    ORA #$0001              A:3100 X:FA80 Y:2480
C2/1FDA 85 E0       STA $E0    [$00:00E0]   A:3101 X:FA80 Y:2480
C2/1FDC BF 2D 00 7E LDA $7E002D,x[$7E:FAAD] A:3101 X:FA80 Y:2480
C2/1FE0 29 FF 00    AND #$00FF              A:2302 X:FA80 Y:2480
C2/1FE3 85 E2       STA $E2    [$00:00E2]   A:0002 X:FA80 Y:2480
C2/1FE5 64 E4       STZ $E4    [$00:00E4]   A:0002 X:FA80 Y:2480
C2/1FE7 64 EC       STZ $EC    [$00:00EC]   A:0002 X:FA80 Y:2480
C2/1FE9 A6 66       LDX $66    [$00:0066]   A:0002 X:FA80 Y:2480
C2/1FEB BF 0E 00 40 LDA $40000E,x[$40:248E] A:0002 X:2480 Y:2480
C2/1FEF AA          TAX                     A:4040 X:2480 Y:2480
C2/1FF0 20 01 73    JSR $7301  [$C2:7301]   A:4040 X:4040 Y:2480 ;Ally: Load Animation Data?
C2/1FF3 A6 66       LDX $66    [$00:0066]   A:0008 X:4040 Y:0008
C2/1FF5 A9 02 00    LDA #$0002              A:0008 X:2480 Y:0008 ;load camera gawk frame (for ABXY buttons)
C2/1FF8 9F 08 00 40 STA $400008,x[$40:2488] A:0002 X:2480 Y:0008
C2/1FFC 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:0002 X:2480 Y:0008
----------------------------------------------------------------
Ally: Ailments and what they do
C2/1FFF A4 66
	A2 FF FF
	E8
	4A
	90 FC
	8A
	0A
	AA
C2/200B 7C 0E 20

	1E 20	;Mute
	29 20	;Sleep
	3A 20	;Poison
	48 20	;Fear
	53 20	;*Confuse
	68 20	;Mushroom
	8D 20	;Scarecrow
	98 20	;Invincible/Invulnerable/Red Essence

Mute
C2/201E BB          TYX                     A:0000 X:0000 Y:1484
C2/201F A9 02 00    LDA #$0002              A:0000 X:0000 Y:1484
C2/2022 9F 08 00 40 STA $400008,x[$40:0008] A:0000 X:0000 Y:1484
C2/2026 4C 5F 0C    JMP $0C5F  [$7E:0C5F]   A:0000 X:0000 Y:1484

Sleep
C2/2029 BB          TYX                     A:0000 X:0000 Y:1484
C2/202A BF 00 00 40 LDA $400000,x[$40:0000] A:0000 X:0000 Y:1484
C2/202E 29 BF FF    AND #$FFBF              A:0000 X:0000 Y:1484
C2/2031 9F 00 00 40 STA $400000,x[$40:0000] A:0000 X:0000 Y:1484
C2/2035 E6 60       INC $60    [$00:0060]   A:0000 X:0000 Y:1484
C2/2037 4C 5F 0C    JMP $0C5F  [$7E:0C5F]   A:0000 X:0000 Y:1484

Poison
C2/203A BB          TYX                     A:0000 X:0000 Y:1484
C2/203B A9 01 00    LDA #$0001              A:0000 X:0000 Y:1484
C2/203E 9F 08 00 40 STA $400008,x[$40:0008] A:0000 X:0000 Y:1484
C2/2042 20 E4 23    JSR $23E4  [$7E:23E4]   A:0000 X:0000 Y:1484
C2/2045 4C 5F 0C    JMP $0C5F  [$7E:0C5F]   A:0000 X:0000 Y:1484

Fear
C2/2048 BB          TYX                     A:0000 X:0000 Y:1484
C2/2049 A9 02 00    LDA #$0002              A:0000 X:0000 Y:1484
C2/204C 9F 08 00 40 STA $400008,x[$40:0008] A:0000 X:0000 Y:1484
C2/2050 4C 5F 0C    JMP $0C5F  [$7E:0C5F]   A:0000 X:0000 Y:1484

*Confuse
C2/2053 BB          TYX                     A:0000 X:0000 Y:1484
C2/2054 A9 02 00    LDA #$0002              A:0000 X:0000 Y:1484 ;sets Action Command to "Use Attack"
C2/2057 8D 2A 07    STA $072A  [$7E:072A]   A:0000 X:0000 Y:1484
C2/205A BF 0A 00 40 LDA $40000A,x[$40:000A] A:0000 X:0000 Y:1484
C2/205E 8D 50 07    STA $0750  [$7E:0750]   A:0000 X:0000 Y:1484
C2/2061 22 24 A0 C2 JSL $C2A024[$C2:A024]   A:0000 X:0000 Y:1484
C2/2065 4C E5 21    JMP $21E5  [$7E:21E5]   A:0000 X:0000 Y:1484

Mushroom
C2/2068 BB          TYX                     A:0000 X:0000 Y:1484
C2/2069 A9 01 00    LDA #$0001              A:0000 X:0000 Y:1484
C2/206C 9F 08 00 40 STA $400008,x[$40:0008] A:0000 X:0000 Y:1484
C2/2070 BF 0E 00 40 LDA $40000E,x[$40:000E] A:0000 X:0000 Y:1484
C2/2074 AA          TAX                     A:0000 X:0000 Y:1484
C2/2075 BF 01 00 40 LDA $400001,x[$40:0001] A:0000 X:0000 Y:1484
C2/2079 29 EF FF    AND #$FFEF              A:0000 X:0000 Y:1484
C2/207C 9F 01 00 40 STA $400001,x[$40:0001] A:0000 X:0000 Y:1484
C2/2080 A9 04 FF    LDA #$FF04              A:0000 X:0000 Y:1484
C2/2083 9F 05 00 40 STA $400005,x[$40:0005] A:0000 X:0000 Y:1484
C2/2087 20 E4 23    JSR $23E4  [$7E:23E4]   A:0000 X:0000 Y:1484
C2/208A 4C 5F 0C    JMP $0C5F  [$7E:0C5F]   A:0000 X:0000 Y:1484

Scarecrow
C2/208D BB          TYX                     A:0000 X:0000 Y:1484
C2/208E A9 02 00    LDA #$0002              A:0000 X:0000 Y:1484
C2/2091 9F 08 00 40 STA $400008,x[$40:0008] A:0000 X:0000 Y:1484
C2/2095 4C 5F 0C    JMP $0C5F  [$7E:0C5F]   A:0000 X:0000 Y:1484

Invincible/Invulnerable/Red Essence
C2/2098 BB          TYX                     A:0000 X:0000 Y:1484
C2/2099 A9 02 00    LDA #$0002              A:0000 X:0000 Y:1484
C2/209C 9F 08 00 40 STA $400008,x[$40:0008] A:0000 X:0000 Y:1484
C2/20A0 4C 5F 0C    JMP $0C5F  [$7E:0C5F]   A:0000 X:0000 Y:1484


----------------------------------------------------------------
C2/21E5 9C 80 0B    STZ $0B80  [$00:0B80]   A:FC00 X:0008 Y:2480
C2/21E8 9C 82 0B    STZ $0B82  [$00:0B82]   A:FC00 X:0008 Y:2480
ALLY: Command to use
C2/21EB AD 2A 07    LDA $072A  [$00:072A]   A:FC00 X:0008 Y:2480
C2/21EE 0A          ASL A                   A:0001 X:2480 Y:2480
C2/21EF AA          TAX                     A:0002 X:2480 Y:2480
C2/21F0 7C F3 21    JMP ($21F3,x)[$C2:2211] A:0002 X:0002 Y:2480 

Action Commands
	FF 21	;...
	11 22	;Use Defend
	57 22	;Use Weapon
	63 22	;Use Spell
	6F 22	;Use Item
	7B 22	;Run away

Action Commands: Use Defense (B button)
C2/2211 A6 66
	BF 00 00 40
	29 BF FF
	9F 00 00 40
	AE 50 07	;Load character status
	BF 41 00 7E	;Load current status buffs
	09 04 00	;Set bit 2 (1 turn Defense)
	9F 41 00 7E	;Save back to character
	BF 3E 00 7E	
	AA
	BF 0E 00 40
	AA
	BF 01 00 40
	29 F7 FF
	09 10 00
	9F 01 00 40
	BF 05 00 40
	29 00 FF
	09 05 00	;Set animation sequence to 05
	9F 05 00 40	;Save as still frame
	E6 60
	4C 4F 0C	;Finish turn

Action Commands: Use Weapon (A button)
C2/2257 22 12 A0 C2 JSL $C2A012[$C2:A012]   A:0004 X:0004 Y:2480 ;load weapon/spell/item type and attributes
C2/225B A9 06 00    LDA #$0006              A:0000 X:FA80 Y:0732
C2/225E 85 E4       STA $E4    [$00:00E4]   A:0006 X:FA80 Y:0732 
C2/2260 4C B5 23    JMP $23B5  [$C2:23B5]   A:0006 X:FA80 Y:0732 ;load animations

Action Commands: Use Spell (Y button)
C2/2263 22 12 A0 C2 JSL $C2A012[$C2:A012]   A:0006 X:0006 Y:2480 ;load weapon/spell/item type and attributes
C2/2267 A9 08 00    LDA #$0008              A:0000 X:FA80 Y:0732
C2/226A 85 E4       STA $E4    [$00:00E4]   A:0008 X:FA80 Y:0732
C2/226C 4C B5 23    JMP $23B5  [$C2:23B5]   A:0008 X:FA80 Y:0732 ;Load animations

Action Commands: Use Item (X button)
C2/226F 22 12 A0 C2 JSL $C2A012[$C2:A012]   A:0008 X:FA80 Y:0732
C2/2273 A9 0A 00    LDA #$000A              A:0000 X:FA80 Y:0732
C2/2276 85 E4       STA $E4    [$00:00E4]   A:000A X:FA80 Y:0732
C2/2278 4C B5 23    JMP $23B5  [$C2:23B5]   A:000A X:FA80 Y:0732

Action Commands: Run away (B button)
C2/227B AF 1E FA 7E						 ;Checks to see if you can't run
...
C2/229E A5 E0       LDA $E0    [$00:00E0]   A:0001 X:0000 Y:2600 
C2/22A0 C9 01 00    CMP #$0001              A:0001 X:0000 Y:2600 
C2/22A3 F0 3B       BEQ $3B    [$22E0]      A:0001 X:0000 Y:2600 ;If run is successful, jump

	A0 24 00	;"Couldn't run!" dialogue (NOTE: number is double b/c it's a pointer)
	80 03

	A0 26 00	;"Can't run from this" dialogue (NOTE: number is double b/c it's a pointer)

	9C 8A 0B	;Displays # dialogue at Y

	AF 14 00 FA	;load battle message from table
	85 E4
	A9 FA 00	;bank #
	8D 88 0B	
	85 E6
	B7 E4
	8D 86 0B
	A9 00 00
	8D 84 0B
	A9 03 00
	8D 80 0B
	A6 66
	A9 07 00
	9F 08 00 40
	4C 5F 0C	 ;processor

C2/22E0 A2 00 00    LDX #$0000              A:0001 X:0000 Y:2600 
repeat for each character in about to run
C2/22E3 86 EE       STX $EE    [$00:00EE]   A:0001 X:0000 Y:2600 
C2/22E5 BF 27 01 C2 LDA $C20127,x[$C2:0127] A:0001 X:0000 Y:2600 ;load character slot (FA80, FB00, FB80)
C2/22E9 AA          TAX                     A:FA80 X:0000 Y:2600
C2/22EA BF 00 00 7E LDA $7E0000,x[$7E:FA80] A:FA80 X:FA80 Y:2600 ;load character mortal status
C2/22EE 29 C0 00    AND #$00C0              A:0200 X:FA80 Y:2600 ;check mortal state
C2/22F1 D0 21       BNE $21    [$2314]      A:0000 X:FA80 Y:2600 ;Jump if down/fainted

C2/22F3 BF 01 00 7E LDA $7E0001,x[$7E:FA81] A:0000 X:FA80 Y:2600 ;Load character number
C2/22F7 29 FF 00    AND #$00FF              A:0002 X:FA80 Y:2600
C2/22FA 85 E2       STA $E2    [$00:00E2]   A:0002 X:FA80 Y:2600
C2/22FC A9 0E 00    LDA #$000E              A:0002 X:FA80 Y:2600
C2/22FF 85 E4       STA $E4    [$00:00E4]   A:000E X:FA80 Y:2600
C2/2301 AF 00 00 F5 LDA $F50000[$F5:0000]   A:000E X:FA80 Y:2600 ;Call animation script 35:0000
C2/2305 85 EA       STA $EA    [$00:00EA]   A:0002 X:FA80 Y:2600
C2/2307 A9 F5 00    LDA #$00F5              A:0002 X:FA80 Y:2600
C2/230A 85 EC       STA $EC    [$00:00EC]   A:00F5 X:FA80 Y:2600
C2/230C BF 3E 00 7E LDA $7E003E,x[$7E:FABE] A:00F5 X:FA80 Y:2600
C2/2310 AA          TAX                     A:2500 X:FA80 Y:2600
C2/2311 20 DF 07    JSR $07DF  [$C2:07DF]   A:2500 X:2500 Y:2600 ;
C2/2314 A6 EE       LDX $EE    [$00:00EE]   A:00F5 X:2500 Y:0004
C2/2316 E8          INX                     A:00F5 X:0000 Y:0004
C2/2317 E8          INX                     A:00F5 X:0001 Y:0004
C2/2318 E0 05 00    CPX #$0005              A:00F5 X:0002 Y:0004
C2/231B 30 C6       BMI $C6    [$22E3]      A:00F5 X:0002 Y:0004 ;repeat for each character in about to run

C2/231D A6 66       LDX $66    [$00:0066]   A:00F5 X:0006 Y:0000
C2/231F BF 00 00 40 LDA $400000,x[$40:2600] A:00F5 X:2600 Y:0000
C2/2323 29 BF FF    AND #$FFBF              A:00C8 X:2600 Y:0000
C2/2326 9F 00 00 40 STA $400000,x[$40:2600] A:0088 X:2600 Y:0000
C2/232A BF 02 00 40 LDA $400002,x[$40:2602] A:0088 X:2600 Y:0000
C2/232E 85 60       STA $60    [$00:0060]   A:0502 X:2600 Y:0000
C2/2330 BF 04 00 40 LDA $400004,x[$40:2604] A:0502 X:2600 Y:0000
C2/2334 85 62       STA $62    [$00:0062]   A:00F5 X:2600 Y:0000
C2/2336 A9 02 00    LDA #$0002              A:00F5 X:2600 Y:0000
C2/2339 0C 00 07    TSB $0700  [$00:0700]   A:0002 X:2600 Y:0000
C2/233C 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:0002 X:2600 Y:0000


----------------------------------------------------------------

Load animations
C2/23B5 A6 66       LDX $66    [$00:0066]   A:0006 X:0000 Y:0732
C2/23B7 9B          TXY                     A:0006 X:2500 Y:0732
C2/23B8 BF 0A 00 40 LDA $40000A,x[$40:250A] A:0006 X:2500 Y:2500
C2/23BC AA          TAX                     A:FA80 X:2500 Y:2500
C2/23BD BF 01 00 7E LDA $7E0001,x[$7E:FA81] A:FA80 X:FA80 Y:2500
C2/23C1 29 FF 00    AND #$00FF              A:5500 X:FA80 Y:2500
C2/23C4 85 E2       STA $E2    [$00:00E2]   A:0000 X:FA80 Y:2500
C2/23C6 AF 00 00 F5 LDA $F50000[$F5:0000]   A:0000 X:FA80 Y:2500
C2/23CA 85 EA       STA $EA    [$00:00EA]   A:0002 X:FA80 Y:2500
C2/23CC A9 F5 00    LDA #$00F5              A:0002 X:FA80 Y:2500
C2/23CF 85 EC       STA $EC    [$00:00EC]   A:00F5 X:FA80 Y:2500
C2/23D1 BB          TYX                     A:00F5 X:FA80 Y:2500
C2/23D2 20 DF 07    JSR $07DF  [$C2:07DF]   A:00F5 X:2500 Y:2500 ;Weapon/spell/run away animations
C2/23D5 BF 02 00 40 LDA $400002,x[$40:2502] A:00F5 X:2500 Y:0000
C2/23D9 85 60       STA $60    [$00:0060]   A:0488 X:2500 Y:0000
C2/23DB BF 04 00 40 LDA $400004,x[$40:2504] A:0488 X:2500 Y:0000
C2/23DF 85 62       STA $62    [$00:0062]   A:00F5 X:2500 Y:0000
C2/23E1 4C 4F 0C    JMP $0C4F  [$C2:0C4F]   A:00F5 X:2500 Y:0000



----------------------------------------------------------------
$C2/23E4 A6 66       LDX $66    [$00:0066]   A:0001 X:2480 Y:2480
$C2/23E6 BF 0A 00 40 LDA $40000A,x[$40:248A] A:0001 X:2480 Y:2480
$C2/23EA AA          TAX                     A:FA80 X:2480 Y:2480
$C2/23EB BF 44 00 7E LDA $7E0044,x[$7E:FAC4] A:FA80 X:FA80 Y:2480
$C2/23EF 89 80 00    BIT #$0080              A:0007 X:FA80 Y:2480
$C2/23F2 D0 01       BNE $01    [$23F5]      A:0007 X:FA80 Y:2480
$C2/23F4 60          RTS                     A:0007 X:FA80 Y:2480

load healing numerals for display?
$C2/23F5 BF 45 00 7E LDA $7E0045,x[$7E:FAC5] A:0787 X:FA80 Y:2480
$C2/23F9 85 E0       STA $E0    [$00:00E0]   A:8007 X:FA80 Y:2480
$C2/23FB 29 FF 7F    AND #$7FFF              A:8007 X:FA80 Y:2480
$C2/23FE 85 D0       STA $D0    [$00:00D0]   A:0007 X:FA80 Y:2480 
$C2/2400 A2 D2 00    LDX #$00D2              A:0007 X:FA80 Y:2480 
$C2/2403 20 2E 05    JSR $052E  [$C2:052E]   A:0007 X:00D2 Y:2480 ;load damage numerals
$C2/2406 A5 E0       LDA $E0    [$00:00E0]   A:0001 X:00D2 Y:2480 P:enVmxdIzc
$C2/2408 10 07       BPL $07    [$2411]      A:8007 X:00D2 Y:2480 P:eNVmxdIzc
$C2/240A A9 10 10    LDA #$1010              A:8007 X:00D2 Y:2480 P:eNVmxdIzc
$C2/240D 04 D2       TSB $D2    [$00:00D2]   A:1010 X:00D2 Y:2480 P:enVmxdIzc
$C2/240F 04 D4       TSB $D4    [$00:00D4]   A:1010 X:00D2 Y:2480 P:enVmxdIZc
$C2/2411 A5 D6       LDA $D6    [$00:00D6]   A:1010 X:00D2 Y:2480 P:enVmxdIzc
$C2/2413 0A          ASL A                   A:0001 X:00D2 Y:2480 P:enVmxdIzc
$C2/2414 AA          TAX                     A:0002 X:00D2 Y:2480 P:enVmxdIzc
$C2/2415 BF 23 31 C2 LDA $C23123,x[$C2:3125] A:0002 X:0002 Y:2480 P:enVmxdIzc
$C2/2419 85 D8       STA $D8    [$00:00D8]   A:0000 X:0002 Y:2480 P:enVmxdIZc
$C2/241B A6 66       LDX $66    [$00:0066]   A:0000 X:0002 Y:2480 P:enVmxdIZc
$C2/241D BF 0E 00 40 LDA $40000E,x[$40:248E] A:0000 X:2480 Y:2480 P:enVmxdIzc
$C2/2421 AA          TAX                     A:4040 X:2480 Y:2480 P:enVmxdIzc
$C2/2422 BF 19 00 40 LDA $400019,x[$40:4059] A:4040 X:4040 Y:2480 P:enVmxdIzc
$C2/2426 29 FF 00    AND #$00FF              A:0008 X:4040 Y:2480 P:enVmxdIzc
$C2/2429 4A          LSR A                   A:0008 X:4040 Y:2480 P:enVmxdIzc
$C2/242A 4A          LSR A                   A:0004 X:4040 Y:2480 P:enVmxdIzc
$C2/242B AA          TAX                     A:0002 X:4040 Y:2480 P:enVmxdIzc
$C2/242C BF 2D 31 C2 LDA $C2312D,x[$C2:312F] A:0002 X:0002 Y:2480 P:enVmxdIzc
$C2/2430 85 D9       STA $D9    [$00:00D9]   A:000C X:0002 Y:2480 P:enVmxdIzc
$C2/2432 A6 66       LDX $66    [$00:0066]   A:000C X:0002 Y:2480 P:enVmxdIzc
$C2/2434 E2 20       SEP #$20                A:000C X:2480 Y:2480 P:enVmxdIzc
$C2/2436 A5 D8       LDA $D8    [$00:00D8]   A:000C X:2480 Y:2480 P:enVMxdIzc
$C2/2438 18          CLC                     A:0000 X:2480 Y:2480 P:enVMxdIZc
$C2/2439 7F 32 00 40 ADC $400032,x[$40:24B2] A:0000 X:2480 Y:2480 P:enVMxdIZc
$C2/243D 85 D8       STA $D8    [$00:00D8]   A:0057 X:2480 Y:2480 P:envMxdIzc
$C2/243F A5 D9       LDA $D9    [$00:00D9]   A:0057 X:2480 Y:2480 P:envMxdIzc
$C2/2441 18          CLC                     A:000C X:2480 Y:2480 P:envMxdIzc
$C2/2442 7F 36 00 40 ADC $400036,x[$40:24B6] A:000C X:2480 Y:2480 P:envMxdIzc
$C2/2446 85 D9       STA $D9    [$00:00D9]   A:00BB X:2480 Y:2480 P:eNvMxdIzc
$C2/2448 C2 20       REP #$20                A:00BB X:2480 Y:2480 P:eNvMxdIzc
$C2/244A A9 80 00    LDA #$0080              A:00BB X:2480 Y:2480 P:eNvmxdIzc
$C2/244D 85 E0       STA $E0    [$00:00E0]   A:0080 X:2480 Y:2480 P:envmxdIzc
$C2/244F A9 10 00    LDA #$0010              A:0080 X:2480 Y:2480 P:envmxdIzc
$C2/2452 85 E2       STA $E2    [$00:00E2]   A:0010 X:2480 Y:2480 P:envmxdIzc
$C2/2454 A9 00 00    LDA #$0000              A:0010 X:2480 Y:2480 P:envmxdIzc
$C2/2457 85 E4       STA $E4    [$00:00E4]   A:0000 X:2480 Y:2480 P:envmxdIZc
$C2/2459 AF 30 A0 C2 LDA $C2A030[$C2:A030]   A:0000 X:2480 Y:2480 P:envmxdIZc
$C2/245D 85 EA       STA $EA    [$00:00EA]   A:E654 X:2480 Y:2480 P:eNvmxdIzc
$C2/245F A9 C2 00    LDA #$00C2              A:E654 X:2480 Y:2480 P:eNvmxdIzc
$C2/2462 85 EC       STA $EC    [$00:00EC]   A:00C2 X:2480 Y:2480 P:envmxdIzc
$C2/2464 20 30 07    JSR $0730  [$C2:0730]   A:00C2 X:2480 Y:2480
$C2/2467 A5 66       LDA $66    [$00:0066]   A:0000 X:2C00 Y:0020 P:envmxdIZc
$C2/2469 9F 0C 00 40 STA $40000C,x[$40:2C0C] A:2480 X:2C00 Y:0020 P:envmxdIzc
$C2/246D AA          TAX                     A:2480 X:2C00 Y:0020 P:envmxdIzc
$C2/246E A5 D2       LDA $D2    [$00:00D2]   A:2480 X:2480 Y:0020 P:envmxdIzc
$C2/2470 9F 48 00 40 STA $400048,x[$40:24C8] A:1010 X:2480 Y:0020 P:envmxdIzc
$C2/2474 A5 D4       LDA $D4    [$00:00D4]   A:1010 X:2480 Y:0020 P:envmxdIzc
$C2/2476 9F 4A 00 40 STA $40004A,x[$40:24CA] A:17FF X:2480 Y:0020 P:envmxdIzc
$C2/247A A5 D8       LDA $D8    [$00:00D8]   A:17FF X:2480 Y:0020 P:envmxdIzc
$C2/247C 9F 4C 00 40 STA $40004C,x[$40:24CC] A:BB57 X:2480 Y:0020 P:eNvmxdIzc
$C2/2480 BF 4F 00 40 LDA $40004F,x[$40:24CF] A:BB57 X:2480 Y:0020 P:eNvmxdIzc
$C2/2484 29 FE FF    AND #$FFFE              A:FF03 X:2480 Y:0020 P:eNvmxdIzc
$C2/2487 9F 4F 00 40 STA $40004F,x[$40:24CF] A:FF02 X:2480 Y:0020 P:eNvmxdIzc
$C2/248B A2 02 FC    LDX #$FC02              A:FF02 X:2480 Y:0020 P:eNvmxdIzc
$C2/248E A0 02 32    LDY #$3202              A:FF02 X:FC02 Y:0020 P:eNvmxdIzc
$C2/2491 A9 1D 00    LDA #$001D              A:FF02 X:FC02 Y:3202 P:envmxdIzc
$C2/2494 8B          PHB                     A:001D X:FC02 Y:3202 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:001D X:FC02 Y:3202 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:001C X:FC03 Y:3203 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:001B X:FC04 Y:3204 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:001A X:FC05 Y:3205 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0019 X:FC06 Y:3206 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0018 X:FC07 Y:3207 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0017 X:FC08 Y:3208 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0016 X:FC09 Y:3209 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0015 X:FC0A Y:320A P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0014 X:FC0B Y:320B P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0013 X:FC0C Y:320C P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0012 X:FC0D Y:320D P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0011 X:FC0E Y:320E P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0010 X:FC0F Y:320F P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:000F X:FC10 Y:3210 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:000E X:FC11 Y:3211 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:000D X:FC12 Y:3212 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:000C X:FC13 Y:3213 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:000B X:FC14 Y:3214 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:000A X:FC15 Y:3215 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0009 X:FC16 Y:3216 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0008 X:FC17 Y:3217 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0007 X:FC18 Y:3218 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0006 X:FC19 Y:3219 P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0005 X:FC1A Y:321A P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0004 X:FC1B Y:321B P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0003 X:FC1C Y:321C P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0002 X:FC1D Y:321D P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0001 X:FC1E Y:321E P:envmxdIzc
$C2/2495 54 00 C3    MVN C3 00               A:0000 X:FC1F Y:321F P:envmxdIzc
$C2/2498 AB          PLB                     A:FFFF X:FC20 Y:3220 P:envmxdIzc
$C2/2499 A9 01 00    LDA #$0001              A:FFFF X:FC20 Y:3220 P:envmxdIZc
$C2/249C 8D 00 32    STA $3200  [$00:3200]   A:0001 X:FC20 Y:3220 P:envmxdIzc
$C2/249F 60          RTS                     A:0001 X:FC20 Y:3220 P:envmxdIzc

----------------------------------------------------------------
MONSTER: Ailments and what they do
C2/2513 A4 66
	A2 FF FF
	E8
	4A
	90 FC
	8A
	0A
	AA
C2/251F 7C 22 25

	32 25	;Mute
	3D 25	;Sleep
	5E 25	;Poison
	6C 25	;Fear
	77 25	;*Confuse
	8C 25	;Mushroom
	8C 25	;Scarecrow
	97 25	;Invincible/Invulnerable/Red Essence


----------------------------------------------------------------
*Confuse
C2/2577 BB          TYX                     A:0008 X:0008 Y:2400
C2/2578 A9 02 00    LDA #$0002              A:0008 X:2400 Y:2400 ;sets to Physical attack
C2/257B 8D 2A 07    STA $072A  [$00:072A]   A:0002 X:2400 Y:2400 ;saves to be called later at C2/261F
C2/257E BF 0A 00 40 LDA $40000A,x[$40:240A] A:0002 X:2400 Y:2400
C2/2582 8D 50 07    STA $0750  [$00:0750]   A:FC00 X:2400 Y:2400
C2/2585 22 24 A0 C2 JSL $C2A024[$C2:A024]   A:FC00 X:2400 Y:2400
C2/2589 4C 1F 26    JMP $261F  [$C2:261F]   A:FC00 X:0008 Y:2400
----------------------------------------------------------------
MONSTER: Attacks/Spells
C2/25B6 BB          TYX                     A:0002 X:2400 Y:2400
C2/25B7 BF 0A 00 40 LDA $40000A,x[$40:240A] A:0002 X:2400 Y:2400
C2/25BB AA          TAX                     A:FC00 X:2400 Y:2400
C2/25BC AD 00 07    LDA $0700  [$00:0700]   A:FC00 X:FC00 Y:2400
C2/25BF 89 80 00    BIT #$0080              A:E000 X:FC00 Y:2400
C2/25C2 F0 09       BEQ $09    [$25CD]      A:E080 X:FC00 Y:2400
C2/25C4 AD 70 07    LDA $0770  [$00:0770]   A:E080 X:FC00 Y:2400
C2/25C7 CF 2D 01 C2 CMP $C2012D[$C2:012D]   A:FA80 X:FC00 Y:2400 ;load and compare monster pointers to ???
C2/25CB 10 06       BPL $06    [$25D3]      A:FA80 X:FC00 Y:2400

C2/25CD 22 06 A0 C2 JSL $C2A006[$C2:A006]   A:FA80 X:FC00 Y:2400 ;MONSTER: Turn start
C2/25D1 80 04       BRA $04    [$25D7]      A:0003 X:FC00 Y:0003

C2/25D7 AD 26 07    LDA $0726  [$00:0726]   A:0003 X:FC00 Y:0003
C2/25DA C9 FF FF    CMP #$FFFF              A:0000 X:FC00 Y:0003
C2/25DD D0 40       BNE $40    [$261F]      A:0000 X:FC00 Y:0003

C2/25DF 9C 26 07    STZ $0726  [$00:0726]   A:FFFF X:FC00 Y:0001
C2/25E2 A6 66       LDX $66    [$00:0066]   A:FFFF X:FC00 Y:0001
C2/25E4 A9 00 00    LDA #$0000              A:FFFF X:2400 Y:0001
C2/25E7 9F 08 00 40 STA $400008,x[$40:2408] A:0000 X:2400 Y:0001
C2/25EB BF 00 00 40 LDA $400000,x[$40:2400] A:0000 X:2400 Y:0001
C2/25EF 29 BF FF    AND #$FFBF              A:00C9 X:2400 Y:0001
C2/25F2 9F 00 00 40 STA $400000,x[$40:2400] A:0089 X:2400 Y:0001
C2/25F6 BF 0A 00 40 LDA $40000A,x[$40:240A] A:0089 X:2400 Y:0001
C2/25FA AA          TAX                     A:FC00 X:2400 Y:0001
C2/25FB BF 60 00 7E LDA $7E0060,x[$7E:FC60] A:FC00 X:FC00 Y:0001
C2/25FF 29 FF 7F    AND #$7FFF              A:8001 X:FC00 Y:0001
C2/2602 9F 60 00 7E STA $7E0060,x[$7E:FC60] A:0001 X:FC00 Y:0001
C2/2606 BF 00 00 7E LDA $7E0000,x[$7E:FC00] A:0001 X:FC00 Y:0001
C2/260A 29 C0 00    AND #$00C0              A:0100 X:FC00 Y:0001
C2/260D C9 C0 00    CMP #$00C0              A:0000 X:FC00 Y:0001
C2/2610 F0 05       BEQ $05    [$2617]      A:0000 X:FC00 Y:0001 ;If target alive, branch to hit routines

C2/2612 E6 60       INC $60    [$00:0060]   A:0000 X:FC00 Y:0001
C2/2614 4C 4F 0C    JMP $0C4F  [$C2:0C4F]   A:0000 X:FC00 Y:0001

C2/261F AD 2A 07    LDA $072A  [$00:072A]   A:0000 X:FC00 Y:0003
C2/2622 0A          ASL A                   A:0003 X:FC00 Y:0003
C2/2623 AA          TAX                     A:0006 X:FC00 Y:0003
C2/2624 7C 27 26    JMP ($2627,x)[$C2:2653] A:0006 X:0006 Y:0003

	3D 26	;Wait 1 turn
	3D 26	;Wait 1 turn
	4B 26	;Physical attacks (MISS based on bit 7 of 7E:0045 not being set)
	53 26	;Magic / Spell attacks
	3D 26	;Wait 1 turn
	5B 26	;Displays dialogue
	3D 26	;Wait 1 turn
	A9 26	;Freeze
	D8 26	;Re-enters battle, then softlocks
	41 27	;Exits entire battle
	5D 27	;Monster runs from battle

Physical attacks (MISS based on bit 7 of 7E:0045 not being set)
C2/264B A9 06 00    LDA #$0006              A:0004 X:0004 Y:2400
C2/264E 85 E4       STA $E4    [$00:00E4]   A:0006 X:0004 Y:2400
C2/2650 4C 9E 27    JMP $279E  [$C2:279E]   A:0006 X:0004 Y:2400 ;Play Command

Magic / spell attacks
C2/2653 A9 08 00    LDA #$0008              A:0006 X:0006 Y:0003
C2/2656 85 E4       STA $E4    [$00:00E4]   A:0008 X:0006 Y:0003
C2/2658 4C 9E 27    JMP $279E  [$C2:279E]   A:0008 X:0006 Y:0003 ;Play Command

Play Command
C2/279E A6 66       LDX $66    [$00:0066]   A:0008 X:0006 Y:0003
C2/27A0 A9 00 00    LDA #$0000              A:0008 X:2400 Y:0003
C2/27A3 9F 08 00 40 STA $400008,x[$40:2408] A:0000 X:2400 Y:0003
C2/27A7 9B          TXY                     A:0000 X:2400 Y:0003
C2/27A8 BF 0A 00 40 LDA $40000A,x[$40:240A] A:0000 X:2400 Y:2400
C2/27AC AA          TAX                     A:FC00 X:2400 Y:2400
C2/27AD BF 01 00 7E LDA $7E0001,x[$7E:FC01] A:FC00 X:FC00 Y:2400
C2/27B1 29 FF 00    AND #$00FF              A:5501 X:FC00 Y:2400
C2/27B4 09 00 01    ORA #$0100              A:0001 X:FC00 Y:2400
C2/27B7 85 E2       STA $E2    [$00:00E2]   A:0101 X:FC00 Y:2400
C2/27B9 AF 00 00 F5 LDA $F50000[$F5:0000]   A:0101 X:FC00 Y:2400
C2/27BD 85 EA       STA $EA    [$00:00EA]   A:0002 X:FC00 Y:2400
C2/27BF A9 F5 00    LDA #$00F5              A:0002 X:FC00 Y:2400
C2/27C2 85 EC       STA $EC    [$00:00EC]   A:00F5 X:FC00 Y:2400
C2/27C4 BB          TYX                     A:00F5 X:FC00 Y:2400
C2/27C5 20 DF 07    JSR $07DF  [$C2:07DF]   A:00F5 X:2400 Y:2400 ;Weapon/spell/run away animations

C2/27C8 BF 02 00 40 LDA $400002,x[$40:2402] A:00F5 X:2400 Y:0202
C2/27CC 85 60       STA $60    [$00:0060]   A:07A2 X:2400 Y:0202
C2/27CE BF 04 00 40 LDA $400004,x[$40:2404] A:07A2 X:2400 Y:0202
C2/27D2 85 62       STA $62    [$00:0062]   A:00F5 X:2400 Y:0202
C2/27D4 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:00F5 X:2400 Y:0202

----------------------------------------------------------------
Loads animations (also Set/Read Lucky Jewel counter)

C2/299B A6 EE       LDX $EE    [$00:00EE]   A:00F5 X:0000 Y:0002 
C2/299D E2 20       SEP #$20                A:00F5 X:2C0F Y:0002 
C2/299F A7 EA       LDA [$EA]  [$F5:E9F1]   A:00F5 X:2C0F Y:0002 ;Loads animation (load Lucky Jewel max usage)
C2/29A1 9F 60 00 40 STA $400060,x[$40:2C6F] A:000B X:2C0F Y:0002 ;store to counter
C2/29A5 C2 20       REP #$20                A:000B X:2C0F Y:0002 
C2/29A7 A5 60       LDA $60    [$00:0060]   A:000B X:2C0F Y:0002 
C2/29A9 18          CLC                     A:E9EF X:2C0F Y:0002 
C2/29AA 69 04 00    ADC #$0004              A:E9EF X:2C0F Y:0002 
C2/29AD 85 60       STA $60    [$00:0060]   A:E9F3 X:2C0F Y:0002 
C2/29AF 4C 4F 0C    JMP $0C4F  [$00:0C4F]   A:E9F3 X:2C0F Y:0002 

C2/2C19 A6 EE       LDX $EE    [$00:00EE]   A:00F5 X:0000 Y:0002 
C2/2C1B E2 20       SEP #$20                A:00F5 X:2C0F Y:0002 
C2/2C1D BF 60 00 40 LDA $400060,x[$40:2C6F] A:00F5 X:2C0F Y:0002 ;load Lucky Jewel counter
C2/2C21 C7 EA       CMP [$EA]  [$F5:E9F7]   A:0001 X:2C0F Y:0002 ;check if counter at 1
C2/2C23 C2 20       REP #$20                A:0001 X:2C0F Y:0002 
C2/2C25 D0 0B       BNE $0B    [$2C32]      A:0001 X:2C0F Y:0002 ;branch if not at 1
C2/2C27 A5 60       LDA $60    [$00:0060]   A:0001 X:2C0F Y:0002 
C2/2C29 18          CLC                     A:E9F5 X:2C0F Y:0002 
C2/2C2A 69 06 00    ADC #$0006              A:E9F5 X:2C0F Y:0002 
C2/2C2D 85 60       STA $60    [$00:0060]   A:E9FB X:2C0F Y:0002 
C2/2C2F 4C 4F 0C    JMP $0C4F  [$00:0C4F]   A:E9FB X:2C0F Y:0002 

----------------------------------------------------------------
Set/Read Lamb's Lure Counter

C2/2C07 A0 01 00    LDY #$0001              A:004C X:004C Y:0002 
C2/2C0A B7 60       LDA [$60],y[$F5:E99F]   A:004C X:004C Y:0001 ;load Lamb's Lure max usage
C2/2C0C 29 FF 00    AND #$00FF              A:530A X:004C Y:0001 
C2/2C0F 85 E0       STA $E0    [$00:00E0]   A:000A X:004C Y:0001 
C2/2C11 C8          INY                     A:000A X:004C Y:0001 
C2/2C12 B7 60       LDA [$60],y[$F5:E9A0]   A:000A X:004C Y:0002 
C2/2C14 85 E2       STA $E2    [$00:00E2]   A:0053 X:004C Y:0002 
C2/2C16 20 B2 29    JSR $29B2  [$C2:29B2]   A:0053 X:004C Y:0002 

Set/Read Mystery Egg Counter

C2/2C6D A0 01 00    LDY #$0001              A:0050 X:0050 Y:0001 
C2/2C70 B7 60       LDA [$60],y[$F5:E9AC]   A:0050 X:0050 Y:0001 
C2/2C72 29 FF 00    AND #$00FF              A:0A0B X:0050 Y:0001 
C2/2C75 85 E0       STA $E0    [$00:00E0]   A:000B X:0050 Y:0001 
C2/2C77 C8          INY                     A:000B X:0050 Y:0001 
C2/2C78 B7 60       LDA [$60],y[$F5:E9AD]   A:000B X:0050 Y:0002 
C2/2C7A 85 E2       STA $E2    [$00:00E2]   A:000A X:0050 Y:0002 
C2/2C7C 20 B2 29    JSR $29B2  [$C2:29B2]   A:000A X:0050 Y:0002 

Check max usage for Mystery Egg/Lamb's Lure

C2/2C7F A6 EE       LDX $EE    [$00:00EE]   A:00F5 X:0000 Y:0002 
C2/2C81 E2 20       SEP #$20                A:00F5 X:2C8E Y:0002 
C2/2C83 BF 60 00 40 LDA $400060,x[$40:2CEE] A:00F5 X:2C8E Y:0002 ;load Mystery Egg/Lamb's Lure counter
C2/2C87 C7 EA       CMP [$EA]  [$F5:E694]   A:0008 X:2C8E Y:0002 ;compare to maximum for morph
C2/2C89 C2 20       REP #$20                A:0008 X:2C8E Y:0002 
C2/2C8B 30 0B       BMI $0B    [$2C98]      A:0008 X:2C8E Y:0002 ;branch if not at maximum
C2/2C98 A0 04 00    LDY #$0004              A:0008 X:2C8E Y:0002 
C2/2C9B B7 60       LDA [$60],y[$F5:E696]   A:0008 X:2C8E Y:0004 
C2/2C9D 85 60       STA $60    [$00:0060]   A:E6A4 X:2C8E Y:0004 
C2/2C9F 4C 4F 0C    JMP $0C4F  [$00:0C4F]   A:E6A4 X:2C8E Y:0004 

C2/2DE9 A0 01 00    LDY #$0001              A:0060 X:0060 Y:0002 
C2/2DEC B7 60       LDA [$60],y[$F5:E9AA]   A:0060 X:0060 Y:0001 
C2/2DEE 29 0F 00    AND #$000F              A:280B X:0060 Y:0001 
C2/2DF1 18          CLC                     A:000B X:0060 Y:0001 
C2/2DF2 65 66       ADC $66    [$00:0066]   A:000B X:0060 Y:0001 
C2/2DF4 AA          TAX                     A:2C0B X:0060 Y:0001 
C2/2DF5 E2 20       SEP #$20                A:2C0B X:2C0B Y:0001 
C2/2DF7 BF 60 00 40 LDA $400060,x[$40:2C6B] A:2C0B X:2C0B Y:0001 ;load Mystery Egg counter
C2/2DFB 1A          INC A                   A:2C00 X:2C0B Y:0001 ;increment
C2/2DFC 9F 60 00 40 STA $400060,x[$40:2C6B] A:2C01 X:2C0B Y:0001 ;store to counter
C2/2E00 C2 20       REP #$20                A:2C01 X:2C0B Y:0001 
C2/2E02 A5 60       LDA $60    [$00:0060]   A:2C01 X:2C0B Y:0001 
C2/2E04 18          CLC                     A:E9A9 X:2C0B Y:0001 
C2/2E05 69 02 00    ADC #$0002              A:E9A9 X:2C0B Y:0001 
C2/2E08 85 60       STA $60    [$00:0060]   A:E9AB X:2C0B Y:0001 
C2/2E0A 4C 4F 0C    JMP $0C4F  [$00:0C4F]   A:E9AB X:2C0B Y:0001 

----------------------------------------------------------------
DOC_ANI-CODE: <3A> 57 2F *playback animation: target gets hit 
C2/2F57 A2 02 FC    LDX #$FC02              A:0074 X:0074 Y:0001
C2/2F5A A0 02 32    LDY #$3202              A:0074 X:FC02 Y:0001
C2/2F5D A9 1D 00    LDA #$001D              A:0074 X:FC02 Y:3202
C2/2F60 8B          PHB                     A:001D X:FC02 Y:3202
C2/2F61 54 00 C3    MVN C3 00               A:001D X:FC02 Y:3202
C2/2F61 54 00 C3    MVN C3 00               A:001C X:FC03 Y:3203
C2/2F61 54 00 C3    MVN C3 00               A:001B X:FC04 Y:3204
C2/2F61 54 00 C3    MVN C3 00               A:001A X:FC05 Y:3205
C2/2F61 54 00 C3    MVN C3 00               A:0019 X:FC06 Y:3206
C2/2F61 54 00 C3    MVN C3 00               A:0018 X:FC07 Y:3207
C2/2F61 54 00 C3    MVN C3 00               A:0017 X:FC08 Y:3208
C2/2F61 54 00 C3    MVN C3 00               A:0016 X:FC09 Y:3209
C2/2F61 54 00 C3    MVN C3 00               A:0015 X:FC0A Y:320A
C2/2F61 54 00 C3    MVN C3 00               A:0014 X:FC0B Y:320B
C2/2F61 54 00 C3    MVN C3 00               A:0013 X:FC0C Y:320C
C2/2F61 54 00 C3    MVN C3 00               A:0012 X:FC0D Y:320D
C2/2F61 54 00 C3    MVN C3 00               A:0011 X:FC0E Y:320E
C2/2F61 54 00 C3    MVN C3 00               A:0010 X:FC0F Y:320F
C2/2F61 54 00 C3    MVN C3 00               A:000F X:FC10 Y:3210
C2/2F61 54 00 C3    MVN C3 00               A:000E X:FC11 Y:3211
C2/2F61 54 00 C3    MVN C3 00               A:000D X:FC12 Y:3212
C2/2F61 54 00 C3    MVN C3 00               A:000C X:FC13 Y:3213
C2/2F61 54 00 C3    MVN C3 00               A:000B X:FC14 Y:3214
C2/2F61 54 00 C3    MVN C3 00               A:000A X:FC15 Y:3215
C2/2F61 54 00 C3    MVN C3 00               A:0009 X:FC16 Y:3216
C2/2F61 54 00 C3    MVN C3 00               A:0008 X:FC17 Y:3217
C2/2F61 54 00 C3    MVN C3 00               A:0007 X:FC18 Y:3218
C2/2F61 54 00 C3    MVN C3 00               A:0006 X:FC19 Y:3219
C2/2F61 54 00 C3    MVN C3 00               A:0005 X:FC1A Y:321A
C2/2F61 54 00 C3    MVN C3 00               A:0004 X:FC1B Y:321B
C2/2F61 54 00 C3    MVN C3 00               A:0003 X:FC1C Y:321C
C2/2F61 54 00 C3    MVN C3 00               A:0002 X:FC1D Y:321D
C2/2F61 54 00 C3    MVN C3 00               A:0001 X:FC1E Y:321E
C2/2F61 54 00 C3    MVN C3 00               A:0000 X:FC1F Y:321F
C2/2F64 AB          PLB                     A:FFFF X:FC20 Y:3220
C2/2F65 A9 01 00    LDA #$0001              A:FFFF X:FC20 Y:3220
C2/2F68 8D 00 32    STA $3200  [$00:3200]   A:0001 X:FC20 Y:3220
C2/2F6B A2 00 00    LDX #$0000              A:0001 X:FC20 Y:3220
C2/2F6E 86 E0       STX $E0    [$00:00E0]   A:0001 X:0000 Y:3220

C2/2F70 86 EE       STX $EE    [$00:00EE]   A:0001 X:0000 Y:3220
C2/2F72 BD 30 07    LDA $0730,x[$00:0730]   A:0001 X:0000 Y:3220
C2/2F75 F0 47       BEQ $47    [$2FBE]      A:FA80 X:0000 Y:3220

C2/2F77 AA          TAX                     A:FA80 X:0000 Y:3220
C2/2F78 CF 2D 01 C2 CMP $C2012D[$C2:012D]   A:FA80 X:FA80 Y:3220
C2/2F7C 10 09       BPL $09    [$2F87]      A:FA80 X:FA80 Y:3220
C2/2F7E BF 01 00 7E LDA $7E0001,x[$7E:FA81] A:FA80 X:FA80 Y:3220
C2/2F82 29 FF 00    AND #$00FF              A:5500 X:FA80 Y:3220
C2/2F85 80 0A       BRA $0A    [$2F91]      A:0000 X:FA80 Y:3220

C2/2F91 85 E2       STA $E2    [$00:00E2]   A:0000 X:FA80 Y:3220
C2/2F93 A9 02 00    LDA #$0002              A:0000 X:FA80 Y:3220
C2/2F96 85 E4       STA $E4    [$00:00E4]   A:0002 X:FA80 Y:3220
C2/2F98 AF 00 00 F5 LDA $F50000[$F5:0000]   A:0002 X:FA80 Y:3220
C2/2F9C 85 EA       STA $EA    [$00:00EA]   A:0002 X:FA80 Y:3220
C2/2F9E A9 F5 00    LDA #$00F5              A:0002 X:FA80 Y:3220
C2/2FA1 85 EC       STA $EC    [$00:00EC]   A:00F5 X:FA80 Y:3220
C2/2FA3 BF 3E 00 7E LDA $7E003E,x[$7E:FABE] A:00F5 X:FA80 Y:3220
C2/2FA7 AA          TAX                     A:2480 X:FA80 Y:3220
C2/2FA8 E4 66       CPX $66    [$00:0066]   A:2480 X:2480 Y:3220
C2/2FAA D0 09       BNE $09    [$2FB5]      A:2480 X:2480 Y:3220 
C2/2FB5 20 DF 07    JSR $07DF  [$C2:07DF]   A:2480 X:2480 Y:3220 ;Weapon/spell/run away animations

C2/2FB8 A6 EE       LDX $EE    [$00:00EE]   A:00F5 X:2480 Y:0000
C2/2FBA E8          INX                     A:00F5 X:0000 Y:0000
C2/2FBB E8          INX                     A:00F5 X:0001 Y:0000
C2/2FBC 80 B2       BRA $B2    [$2F70]      A:00F5 X:0002 Y:0000

C2/2FBE A5 EE       LDA $EE    [$00:00EE]   A:0000 X:0002 Y:0000
C2/2FC0 F0 0C       BEQ $0C    [$2FCE]      A:0002 X:0002 Y:0000
C2/2FC2 AD 00 07    LDA $0700  [$00:0700]   A:0002 X:0002 Y:0000
C2/2FC5 09 00 08    ORA #$0800              A:E002 X:0002 Y:0000
C2/2FC8 29 FF F8    AND #$F8FF              A:E802 X:0002 Y:0000
C2/2FCB 8D 00 07    STA $0700  [$00:0700]   A:E802 X:0002 Y:0000
C2/2FCE A5 E0       LDA $E0    [$00:00E0]   A:E802 X:0002 Y:0000
C2/2FD0 D0 05       BNE $05    [$2FD7]      A:0000 X:0002 Y:0000
C2/2FD2 E6 60       INC $60    [$00:0060]   A:0000 X:0002 Y:0000
C2/2FD4 4C 4F 0C    JMP $0C4F  [$C2:0C4F]   A:0000 X:0002 Y:0000

----------------------------------------------------------------
spell defense timing??? processor
C2/2FF4 A0 01 00    LDY #$0001              A:0078 X:0078 Y:0002 P:enVmxdIzc
$C2/2FF7 B7 60       LDA [$60],y[$F5:07CF]   A:0078 X:0078 Y:0001 P:enVmxdIzc
$C2/2FF9 2C 00 07    BIT $0700  [$00:0700]   A:0800 X:0078 Y:0001 P:enVmxdIzc
$C2/2FFC F0 03       BEQ $03    [$3001]      A:0800 X:0078 Y:0001 P:eNVmxdIzc
$C2/2FFE 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:0800 X:0078 Y:0001

----------------------------------------------------------------
Damage display
C2/3053 BF 45 00 7E LDA $7E0045,x[$7E:FC45] A:0180 X:FC00 Y:2400
C2/3057 85 E0       STA $E0    [$00:00E0]   A:0001 X:FC00 Y:2400 
C2/3059 29 FF 7F    AND #$7FFF              A:0001 X:FC00 Y:2400
C2/305C 85 D0       STA $D0    [$00:00D0]   A:0001 X:FC00 Y:2400 
C2/305E A2 D2 00    LDX #$00D2              A:0001 X:FC00 Y:2400 
C2/3061 20 2E 05    JSR $052E  [$C2:052E]   A:0001 X:00D2 Y:2400 ;load damage numerals
C2/3064 A5 E0       LDA $E0    [$00:00E0]   A:0001 X:00D2 Y:2400
C2/3066 10 07       BPL $07    [$306F]      A:0001 X:00D2 Y:2400
	A9 10 10	;Set tiles to read Green (healing)
	04 D2	;test and set bits
	04 D4	;test and set bits

C2/306F A5 D6       LDA $D6    [$00:00D6]   A:0001 X:00D2 Y:2400
C2/3071 0A          ASL A                   A:0001 X:00D2 Y:2400 
C2/3072 AA          TAX                     A:0002 X:00D2 Y:2400 
C2/3073 BF 23 31 C2 LDA $C23123,x[$C2:3125] A:0002 X:0002 Y:2400
C2/3077 85 D8       STA $D8    [$00:00D8]   A:0000 X:0002 Y:2400 
C2/3079 4C A4 30    JMP $30A4  [$C2:30A4]   A:0000 X:0002 Y:2400 
----------------------------------------------------------------
C2/3095 A9 0A 0B						 ;MISS: Tiles "M", "I"
C2/3097 85 D2							 
C2/309A A9 1A 1A						 ;MISS: Tiles "S", "S"
C2/309D 85 D4							 
C2/309F A9 0B 00						 ;set Xpos coordinates
C2/30A2 85 D8							 ;
----------------------------------------------------------------
C2/30A4 A6 66       LDX $66    [$00:0066]   A:0000 X:0002 Y:2400
C2/30A6 BF 0E 00 40 LDA $40000E,x[$40:240E] A:0000 X:2400 Y:2400 
C2/30AA AA          TAX                     A:4000 X:2400 Y:2400 
C2/30AB BF 19 00 40 LDA $400019,x[$40:4019] A:4000 X:4000 Y:2400 
C2/30AF 29 FF 00    AND #$00FF              A:0008 X:4000 Y:2400
C2/30B2 4A          LSR A                   A:0008 X:4000 Y:2400
C2/30B3 4A          LSR A                   A:0004 X:4000 Y:2400
C2/30B4 AA          TAX                     A:0002 X:4000 Y:2400
C2/30B5 BF 2D 31 C2 LDA $C2312D,x[$C2:312F] A:0002 X:0002 Y:2400
C2/30B9 85 D9       STA $D9    [$00:00D9]   A:000C X:0002 Y:2400
C2/30BB A6 66       LDX $66    [$00:0066]   A:000C X:0002 Y:2400
C2/30BD E2 20       SEP #$20                A:000C X:2400 Y:2400
C2/30BF A5 D8       LDA $D8    [$00:00D8]   A:000C X:2400 Y:2400
C2/30C1 18          CLC                     A:0000 X:2400 Y:2400
C2/30C2 7F 32 00 40 ADC $400032,x[$40:2432] A:0000 X:2400 Y:2400
C2/30C6 85 D8       STA $D8    [$00:00D8]   A:00B0 X:2400 Y:2400
C2/30C8 A5 D9       LDA $D9    [$00:00D9]   A:00B0 X:2400 Y:2400
C2/30CA 18          CLC                     A:000C X:2400 Y:2400
C2/30CB 7F 36 00 40 ADC $400036,x[$40:2436] A:000C X:2400 Y:2400
C2/30CF 85 D9       STA $D9    [$00:00D9]   A:0084 X:2400 Y:2400
C2/30D1 C2 20       REP #$20                A:0084 X:2400 Y:2400
C2/30D3 A9 80 00    LDA #$0080              A:0084 X:2400 Y:2400
C2/30D6 85 E0       STA $E0    [$00:00E0]   A:0080 X:2400 Y:2400
C2/30D8 A9 10 00    LDA #$0010              A:0080 X:2400 Y:2400
C2/30DB 85 E2       STA $E2    [$00:00E2]   A:0010 X:2400 Y:2400
C2/30DD A9 00 00    LDA #$0000              A:0010 X:2400 Y:2400
C2/30E0 85 E4       STA $E4    [$00:00E4]   A:0000 X:2400 Y:2400
C2/30E2 AF 30 A0 C2 LDA $C2A030[$C2:A030]   A:0000 X:2400 Y:2400
C2/30E6 85 EA       STA $EA    [$00:00EA]   A:E654 X:2400 Y:2400
C2/30E8 A9 C2 00    LDA #$00C2              A:E654 X:2400 Y:2400
C2/30EB 85 EC       STA $EC    [$00:00EC]   A:00C2 X:2400 Y:2400
C2/30ED 20 30 07    JSR $0730  [$C2:0730]   A:00C2 X:2400 Y:2400

C2/30F0 A5 66       LDA $66    [$00:0066]   A:0000 X:2D00 Y:0020
C2/30F2 9F 0C 00 40 STA $40000C,x[$40:2D0C] A:2400 X:2D00 Y:0020
C2/30F6 AA          TAX                     A:2400 X:2D00 Y:0020
C2/30F7 A5 D2       LDA $D2    [$00:00D2]   A:2400 X:2400 Y:0020
C2/30F9 9F 48 00 40 STA $400048,x[$40:2448] A:0000 X:2400 Y:0020
C2/30FD A5 D4       LDA $D4    [$00:00D4]   A:0000 X:2400 Y:0020
C2/30FF 9F 4A 00 40 STA $40004A,x[$40:244A] A:01FF X:2400 Y:0020
C2/3103 A5 D8       LDA $D8    [$00:00D8]   A:01FF X:2400 Y:0020
C2/3105 9F 4C 00 40 STA $40004C,x[$40:244C] A:84B0 X:2400 Y:0020
C2/3109 BF 4F 00 40 LDA $40004F,x[$40:244F] A:84B0 X:2400 Y:0020
C2/310D 29 FE FF    AND #$FFFE              A:FF01 X:2400 Y:0020
C2/3110 9F 4F 00 40 STA $40004F,x[$40:244F] A:FF00 X:2400 Y:0020
C2/3114 E6 60       INC $60    [$00:0060]   A:FF00 X:2400 Y:0020
C2/3116 4C 4F 0C    JMP $0C4F  [$C2:0C4F]   A:FF00 X:2400 Y:0020
----------------------------------------------------------------
Damage/Healing Number coordinates for display?
C2/3123 
----------------------------------------------------------------
DOC_ANI-CODE: *playback sequence for object's current sprite (set by command 03)
$C2/32CA A6 66       LDX $66    [$00:0066]   A:0086 X:0086 Y:0001 P:envmxdIzc
$C2/32CC A0 01 00    LDY #$0001              A:0086 X:2480 Y:0001 P:envmxdIzc
$C2/32CF B7 60       LDA [$60],y[$F5:0478]   A:0086 X:2480 Y:0001 P:envmxdIzc
$C2/32D1 A8          TAY                     A:0407 X:2480 Y:0001 P:envmxdIzc
$C2/32D2 4A          LSR A                   A:0407 X:2480 Y:0407 P:envmxdIzc
$C2/32D3 29 18 00    AND #$0018              A:0203 X:2480 Y:0407 P:envmxdIzC
$C2/32D6 85 E0       STA $E0    [$00:00E0]   A:0000 X:2480 Y:0407 P:envmxdIZC
$C2/32D8 98          TYA                     A:0000 X:2480 Y:0407 P:envmxdIZC
$C2/32D9 29 0F 00    AND #$000F              A:0407 X:2480 Y:0407 P:envmxdIzC
$C2/32DC 85 E2       STA $E2    [$00:00E2]   A:0007 X:2480 Y:0407 P:envmxdIzC
$C2/32DE 98          TYA                     A:0007 X:2480 Y:0407 P:envmxdIzC
$C2/32DF 4A          LSR A                   A:0407 X:2480 Y:0407 P:envmxdIzC
$C2/32E0 29 40 00    AND #$0040              A:0203 X:2480 Y:0407 P:envmxdIzC
$C2/32E3 85 E4       STA $E4    [$00:00E4]   A:0000 X:2480 Y:0407 P:envmxdIZC
$C2/32E5 BF 0E 00 40 LDA $40000E,x[$40:248E] A:0000 X:2480 Y:0407 P:envmxdIZC
$C2/32E9 AA          TAX                     A:4040 X:2480 Y:0407 P:envmxdIzC
$C2/32EA BF 01 00 40 LDA $400001,x[$40:4041] A:4040 X:4040 Y:0407 P:envmxdIzC
$C2/32EE 29 E3 FF    AND #$FFE3              A:8010 X:4040 Y:0407 P:eNvmxdIzC
$C2/32F1 05 E0       ORA $E0    [$00:00E0]   A:8000 X:4040 Y:0407 P:eNvmxdIzC
$C2/32F3 9F 01 00 40 STA $400001,x[$40:4041] A:8000 X:4040 Y:0407 P:eNvmxdIzC
$C2/32F7 A5 E2       LDA $E2    [$00:00E2]   A:8000 X:4040 Y:0407 P:eNvmxdIzC
$C2/32F9 09 00 FF    ORA #$FF00              A:0007 X:4040 Y:0407 P:envmxdIzC
$C2/32FC 9F 05 00 40 STA $400005,x[$40:4045] A:FF07 X:4040 Y:0407 P:eNvmxdIzC
$C2/3300 BF 2D 00 40 LDA $40002D,x[$40:406D] A:FF07 X:4040 Y:0407 P:eNvmxdIzC
$C2/3304 29 BF FF    AND #$FFBF              A:0022 X:4040 Y:0407 P:envmxdIzC
$C2/3307 05 E4       ORA $E4    [$00:00E4]   A:0022 X:4040 Y:0407 P:envmxdIzC
$C2/3309 9F 2D 00 40 STA $40002D,x[$40:406D] A:0022 X:4040 Y:0407 P:envmxdIzC
$C2/330D A5 60       LDA $60    [$00:0060]   A:0022 X:4040 Y:0407 P:envmxdIzC
$C2/330F 18          CLC                     A:0477 X:4040 Y:0407 P:envmxdIzC
$C2/3310 69 02 00    ADC #$0002              A:0477 X:4040 Y:0407 P:envmxdIzc
$C2/3313 85 60       STA $60    [$00:0060]   A:0479 X:4040 Y:0407 P:envmxdIzc
$C2/3315 4C 4F 0C    JMP $0C4F  [$C2:0C4F]   A:0479 X:4040 Y:0407 P:envmxdIzc

----------------------------------------------------------------
DOC_ANI-CODE: <46> 6B 33 Check for mortal status, if all down set game over
$C2/336B A6 66       LDX $66    [$00:0066]   A:008C X:008C Y:0001 P:enVmxdIzc
$C2/336D BF 00 00 40 LDA $400000,x[$40:2480] A:008C X:2480 Y:0001 P:enVmxdIzc
$C2/3371 29 DF FF    AND #$FFDF              A:00A8 X:2480 Y:0001 P:enVmxdIzc
$C2/3374 9F 00 00 40 STA $400000,x[$40:2480] A:0088 X:2480 Y:0001 P:enVmxdIzc
$C2/3378 BF 50 00 40 LDA $400050,x[$40:24D0] A:0088 X:2480 Y:0001 P:enVmxdIzc
$C2/337C C9 FF FF    CMP #$FFFF              A:FFFF X:2480 Y:0001 P:eNVmxdIzc
$C2/337F D0 05       BNE $05    [$3386]      A:FFFF X:2480 Y:0001 P:enVmxdIZC

$C2/3381 E6 60       INC $60    [$00:0060]   A:FFFF X:2480 Y:0001 P:enVmxdIZC
$C2/3383 4C 4F 0C    JMP $0C4F  [$C2:0C4F]   A:FFFF X:2480 Y:0001 P:enVmxdIzC

----------------------------------------------------------------
Read button press for battle menu

C2/351F AE 50 07    LDX $0750  [$00:0750]   A:0004 X:0004 Y:2100 
C2/3522 AD 7C 0B    LDA $0B7C  [$00:0B7C]   A:0004 X:FA80 Y:2100 
C2/3525 89 04 00    BIT #$0004              A:0000 X:FA80 Y:2100 
C2/3528 D0 05       BNE $05    [$352F]      A:0000 X:FA80 Y:2100 
C2/352A AD 14 30    LDA $3014  [$00:3014]   A:0000 X:FA80 Y:2100 ;load joypad register
C2/352D D0 03       BNE $03    [$3532]      A:4000 X:FA80 Y:2100 ;branch if not zero

	4C 5F 0C

C2/3532 89 80 00    BIT #$0080              A:4000 X:FA80 Y:2100 ;check A-button bit
C2/3535 F0 05       BEQ $05    [$353C]      A:4000 X:FA80 Y:2100 ;branch if not set
C2/3537 A9 02 00    LDA #$0002              A:4000 X:FA80 Y:2100 ;load 'attack' menu constant
C2/353A 80 21       BRA $21    [$355D]      A:0002 X:FA80 Y:2100

C2/353C 89 00 40    BIT #$4000              A:4000 X:FA80 Y:2100 ;check Y-button bit
C2/353F F0 05       BEQ $05    [$3546]      A:4000 X:FA80 Y:2100 ;branch if not set
C2/3541 A9 03 00    LDA #$0003              A:4000 X:FA80 Y:2100 ;load 'special' menu constant
C2/3544 80 17       BRA $17    [$355D]      A:0003 X:FA80 Y:2100 

C2/3546 89 40 00    BIT #$0040              A:4000 X:FA80 Y:2100 ;check X-button bit
C2/3549 F0 05       BEQ $05    [$3546]      A:4000 X:FA80 Y:2100 ;branch if not set

C2/355D 8D 2A 07    STA $072A  [$00:072A]   A:0003 X:FA80 Y:2100 ;set as current menu access
C2/3560 AA          TAX                     A:0003 X:FA80 Y:2100 
C2/3561 BF 91 36 C2 LDA $C23691,x[$C2:3694] A:0003 X:0003 Y:2100 ;load 4-button menu constant
C2/3565 29 FF 00    AND #$00FF              A:0206 X:0003 Y:2100 ;isolate it
C2/3568 85 E0       STA $E0    [$00:00E0]   A:0006 X:0003 Y:2100 
C2/356A BB          TYX                     A:0006 X:0003 Y:2100 
C2/356B BF 0E 00 40 LDA $40000E,x[$40:210E] A:0006 X:2100 Y:2100 
C2/356F AA          TAX                     A:4240 X:2100 Y:2100 
C2/3570 BF 05 00 40 LDA $400005,x[$40:4245] A:4240 X:4240 Y:2100 
C2/3574 29 00 FF    AND #$FF00              A:0000 X:4240 Y:2100 
C2/3577 05 E0       ORA $E0    [$00:00E0]   A:0000 X:4240 Y:2100 
C2/3579 9F 05 00 40 STA $400005,x[$40:4245] A:0006 X:4240 Y:2100 
C2/357D BB          TYX                     A:0006 X:4240 Y:2100 
C2/357E A9 03 00    LDA #$0003              A:0006 X:2100 Y:2100 
C2/3581 9F 08 00 40 STA $400008,x[$40:2108] A:0003 X:2100 Y:2100 
C2/3585 4C 5F 0C    JMP $0C5F  [$00:0C5F]   A:0003 X:2100 Y:2100 



C2/59E7 AD 50 07    LDA $0750  [$00:0750]   A:0000 X:0000 Y:2400 
C2/59EA AA          TAX                     A:FB00 X:0000 Y:2400 
C2/59EB BF 44 00 7E LDA $7E0044,x[$7E:FB44] A:FB00 X:FB00 Y:2400 
C2/59EF 89 20 00    BIT #$0020              A:5530 X:FB00 Y:2400 
C2/59F2 F0 00       BEQ $46    [$5A3A]      A:5530 X:FB00 Y:2400 
C2/59F4 29 DF FF    AND #$FFDF              A:5530 X:FB00 Y:2400 
C2/59F7 9F 44 00 7E STA $7E0044,x[$7E:FB44] A:5510 X:FB00 Y:2400 
C2/59FB A9 80 00    LDA #$0080              A:5510 X:FB00 Y:2400 
C2/59FE 85 E0       STA $E0    [$00:00E0]   A:0080 X:FB00 Y:2400 
C2/5A00 A9 1A 00    LDA #$001A              A:0080 X:FB00 Y:2400 
C2/5A03 85 E2       STA $E2    [$00:00E2]   A:001A X:FB00 Y:2400 
C2/5A05 A9 00 00    LDA #$0000              A:001A X:FB00 Y:2400 
C2/5A08 85 E4       STA $E4    [$00:00E4]   A:0000 X:FB00 Y:2400 
C2/5A0A AF 30 A0 C2 LDA $C2A030[$C2:A030]   A:0000 X:FB00 Y:2400 
C2/5A0E 85 EA       STA $EA    [$00:00EA]   A:E654 X:FB00 Y:2400 
C2/5A10 A9 C2 00    LDA #$00C2              A:E654 X:FB00 Y:2400 
C2/5A13 85 EC       STA $EC    [$00:00EC]   A:00C2 X:FB00 Y:2400 
C2/5A15 20 30 07    JSR $0730  [$C2:0730]   A:00C2 X:FB00 Y:2400 

----------------------------------------------------------------
Coordinates for all ally's ABXY battle buttons
C2/3461 BF 85 36 C2	;call function--jumps to coordinate data

C2/3685 BF FF		;Mario
C2/3687 BE FF		;Toadstool
C2/3689	BA FF		;Bowser
C2/368B C0 FF		;Geno
C2/368D C4 FF		;Mallow
C2/368F BF FF		;6th party member

C2/346E C0 FF		;Scarecrow ailment
----------------------------------------------------------------
Targeting
C2/359A BB          TYX                     A:0005 X:40C0 Y:2100
C2/359B A9 04 00    LDA #$0004              A:0005 X:2100 Y:2100
C2/359E 9F 08 00 40 STA $400008,x[$40:2108] A:0004 X:2100 Y:2100
C2/35A2 A9 80 00    LDA #$0080              A:0004 X:2100 Y:2100
C2/35A5 85 E0       STA $E0    [$00:00E0]   A:0080 X:2100 Y:2100
C2/35A7 A9 12 00    LDA #$0012              A:0080 X:2100 Y:2100
C2/35AA 85 E2       STA $E2    [$00:00E2]   A:0012 X:2100 Y:2100
C2/35AC AD 2A 07    LDA $072A  [$00:072A]   A:0012 X:2100 Y:2100
C2/35AF 0A          ASL A                   A:0002 X:2100 Y:2100
C2/35B0 85 E4       STA $E4    [$00:00E4]   A:0004 X:2100 Y:2100
C2/35B2 AF 30 A0 C2 LDA $C2A030[$C2:A030]   A:0004 X:2100 Y:2100
C2/35B6 85 EA       STA $EA    [$00:00EA]   A:E654 X:2100 Y:2100
C2/35B8 A9 C2 00    LDA #$00C2              A:E654 X:2100 Y:2100
C2/35BB 85 EC       STA $EC    [$00:00EC]   A:00C2 X:2100 Y:2100
C2/35BD 20 02 07    JSR $0702  [$C2:0702]   A:00C2 X:2100 Y:2100
C2/35C0 A5 66       LDA $66    [$00:0066]   A:0000 X:2180 Y:0024
C2/35C2 9F 0C 00 40 STA $40000C,x[$40:218C] A:2100 X:2180 Y:0024
C2/35C6 AA          TAX                     A:2100 X:2180 Y:0024
C2/35C7 A9 00 00    LDA #$0000              A:2100 X:2100 Y:0024
C2/35CA 9F 6E 00 40 STA $40006E,x[$40:216E] A:0000 X:2100 Y:0024
C2/35CE A9 FF FF    LDA #$FFFF              A:0000 X:2100 Y:0024
C2/35D1 8D 2C 07    STA $072C  [$00:072C]   A:FFFF X:2100 Y:0024
C2/35D4 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:FFFF X:2100 Y:0024

C2/35D7 BB          TYX                     A:0008 X:0008 Y:2100
$C2/35D8 BF 6E 00 40 LDA $40006E,x[$40:216E] A:0008 X:2100 Y:2100
$C2/35DC D0 03       BNE $03    [$35E1]      A:0000 X:2100 Y:2100
$C2/35DE 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:0000 X:2100 Y:2100

C2/35E1 A9 05 00    LDA #$0005              A:0001 X:2100 Y:2100
$C2/35E4 9F 08 00 40 STA $400008,x[$40:2108] A:0005 X:2100 Y:2100
$C2/35E8 BF 0E 00 40 LDA $40000E,x[$40:210E] A:0005 X:2100 Y:2100
$C2/35EC AA          TAX                     A:40C0 X:2100 Y:2100
$C2/35ED BF 05 00 40 LDA $400005,x[$40:40C5] A:40C0 X:40C0 Y:2100
$C2/35F1 09 01 00    ORA #$0001              A:0808 X:40C0 Y:2100
$C2/35F4 9F 05 00 40 STA $400005,x[$40:40C5] A:0809 X:40C0 Y:2100
$C2/35F8 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:0809 X:40C0 Y:2100

C2/35FC BF 0E 00 40 LDA $40000E,x[$40:210E] A:000A X:2100 Y:2100
$C2/3600 AA          TAX                     A:40C0 X:2100 Y:2100
$C2/3601 BF 01 00 40 LDA $400001,x[$40:40C1] A:40C0 X:40C0 Y:2100
$C2/3605 89 04 00    BIT #$0004              A:0001 X:40C0 Y:2100
$C2/3608 D0 03       BNE $03    [$360D]      A:0001 X:40C0 Y:2100
$C2/360A 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:0001 X:40C0 Y:2100

C2/360D BB          TYX                     A:0005 X:40C0 Y:2100
$C2/360E AD 2C 07    LDA $072C  [$00:072C]   A:0005 X:2100 Y:2100
$C2/3611 C9 FF FF    CMP #$FFFF              A:FFFF X:2100 Y:2100
$C2/3614 D0 13       BNE $13    [$3629]      A:FFFF X:2100 Y:2100
$C2/3616 A9 02 00    LDA #$0002              A:FFFF X:2100 Y:2100
$C2/3619 9F 08 00 40 STA $400008,x[$40:2108] A:0002 X:2100 Y:2100
$C2/361D AD 2E 07    LDA $072E  [$00:072E]   A:0002 X:2100 Y:2100
$C2/3620 8D 14 30    STA $3014  [$00:3014]   A:0080 X:2100 Y:2100
$C2/3623 8D 10 30    STA $3010  [$00:3010]   A:0080 X:2100 Y:2100
$C2/3626 4C 1F 35    JMP $351F  [$C2:351F]   A:0080 X:2100 Y:2100


C2/3758 FF 37 00 7E SBC $7E0037,x[$7E:FC37] A:00A8 X:FC00 Y:0002
C2/375C 85 E6       STA $E6    [$00:00E6]   A:00A0 X:FC00 Y:0002
C2/375E 64 E7       STZ $E7    [$00:00E7]   A:00A0 X:FC00 Y:0002
C2/3760 BF 3C 00 7E LDA $7E003C,x[$7E:FC3C] A:00A0 X:FC00 Y:0002 ;load targeting arrow coordinate
C2/3764 38          SEC                     A:0078 X:FC00 Y:0002
C2/3765 FF 3D 00 7E SBC $7E003D,x[$7E:FC3D] A:0078 X:FC00 Y:0002 ;load targeting arrow coordinate
C2/3769 38          SEC                     A:0078 X:FC00 Y:0002
C2/376A FF 38 00 7E SBC $7E0038,x[$7E:FC38] A:0078 X:FC00 Y:0002
C2/376E 85 E8       STA $E8    [$00:00E8]   A:0068 X:FC00 Y:0002
C2/3770 64 E9       STZ $E9    [$00:00E9]   A:0068 X:FC00 Y:0002
C2/3772 C2 20       REP #$20                A:0068 X:FC00 Y:0002
C2/3774 64 EA       STZ $EA    [$00:00EA]   A:0068 X:FC00 Y:0002
C2/3776 A9 85 00    LDA #$0085              A:0068 X:FC00 Y:0002
C2/3779 85 E0       STA $E0    [$00:00E0]   A:0085 X:FC00 Y:0002
C2/377B 64 E2       STZ $E2    [$00:00E2]   A:0085 X:FC00 Y:0002
C2/377D 64 E4       STZ $E4    [$00:00E4]   A:0085 X:FC00 Y:0002
C2/377F A9 20 00    LDA #$0020              A:0085 X:FC00 Y:0002
C2/3782 85 EC       STA $EC    [$00:00EC]   A:0020 X:FC00 Y:0002
C2/3784 A9 0C 00    LDA #$000C              A:0020 X:FC00 Y:0002	;Target arrow graphics (tile)
C2/3787 85 EE       STA $EE    [$00:00EE]   A:000C X:FC00 Y:0002
C2/3789 20 14 72    JSR $7214  [$C2:7214]   A:000C X:FC00 Y:0002
C2/378C 8A          TXA                     A:0000 X:4100 Y:0008
C2/378D A6 66       LDX $66    [$00:0066]   A:4100 X:4100 Y:0008
C2/378F 9F 0E 00 40 STA $40000E,x[$40:218E] A:4100 X:2180 Y:0008
C2/3793 A5 E6       LDA $E6    [$00:00E6]   A:4100 X:2180 Y:0008
C2/3795 9F 32 00 40 STA $400032,x[$40:21B2] A:00A0 X:2180 Y:0008
C2/3799 A5 E8       LDA $E8    [$00:00E8]   A:00A0 X:2180 Y:0008
C2/379B 9F 36 00 40 STA $400036,x[$40:21B6] A:0068 X:2180 Y:0008
C2/379F A9 00 00    LDA #$0000              A:0068 X:2180 Y:0008
C2/37A2 9F 3A 00 40 STA $40003A,x[$40:21BA] A:0000 X:2180 Y:0008
C2/37A6 A9 01 00    LDA #$0001              A:0000 X:2180 Y:0008
C2/37A9 9F 60 00 40 STA $400060,x[$40:21E0] A:0001 X:2180 Y:0008
C2/37AD 9C 84 0B    STZ $0B84  [$00:0B84]   A:0001 X:2180 Y:0008
C2/37B0 A9 0E 00    LDA #$000E              A:0001 X:2180 Y:0008 ;sets "A" button?
C2/37B3 8D 80 0B    STA $0B80  [$00:0B80]   A:000E X:2180 Y:0008 ;sets "A" button?
C2/37B6 A9 00 01    LDA #$0100              A:000E X:2180 Y:0008
C2/37B9 20 90 9F    JSR $9F90  [$C2:9F90]   A:0100 X:2180 Y:0008
C2/37BC 4C 61 3A    JMP $3A61  [$C2:3A61]   A:0080 X:2180 Y:0008

WEAPONS: Targeting
C2/37DC 89 80 00	;"B" press
	D0 2B		;jump to $37E1

	89 40 C0
	D0 31

C2/37E6 AD 18 30
	89 00 08	;"up" press
	F0 03
	4C 35 38

	89 00 04	;"down" press
	F0 03
	4C A9 38

	89 00 02	;"left" press
	F0 03
	4C 1E 39

	89 00 01	;"right" press
	F0 03
	4C 92 39

	4C 5F 0C

C2/37E1	A9 00 00 8D 2C 07 A9 00 01 80 03
----------------------------------------------------------------
Targeting
C2/3A61 A6 66       LDX $66    [$00:0066]   A:0080 X:2180 Y:0008
$C2/3A63 A9 05 00    LDA #$0005              A:0080 X:2180 Y:0008
$C2/3A66 9F 08 00 40 STA $400008,x[$40:2188] A:0005 X:2180 Y:0008
$C2/3A6A AD 80 0B    LDA $0B80  [$00:0B80]   A:0005 X:2180 Y:0008
$C2/3A6D F0 03       BEQ $03    [$3A72]      A:000E X:2180 Y:0008
$C2/3A6F 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:000E X:2180 Y:0008

Disables X (item) button in battle
C2/3A87 7C 8A 3A
	90 3A
	BB 3A
	E9 3A
	
Disables B (etc) button in battle
C2/3B80 7C 83 3B
	89 3B
	B7 3B
	F8 3B

C2/3B89	AE 50 07 BF 44 00 7E 89 08 00 F0 0B BB A9 02 00 9F 08 00 40 4C 5F 0C


----------------------------------------------------------------
DOC_ANI-CODE: <4F> 20 3C ??? game over?
$C2/3C20 A6 66       LDX $66    [$00:0066]   A:009E X:009E Y:0000 P:envmxdIzc
$C2/3C22 BF 0A 00 40 LDA $40000A,x[$40:248A] A:009E X:2480 Y:0000 P:envmxdIzc
$C2/3C26 AA          TAX                     A:FA80 X:2480 Y:0000 P:eNvmxdIzc
$C2/3C27 BF 00 00 7E LDA $7E0000,x[$7E:FA80] A:FA80 X:FA80 Y:0000 P:eNvmxdIzc
$C2/3C2B 29 C0 00    AND #$00C0              A:00C0 X:FA80 Y:0000 P:envmxdIzc
$C2/3C2E C9 C0 00    CMP #$00C0              A:00C0 X:FA80 Y:0000 P:envmxdIzc
$C2/3C31 D0 10       BNE $10    [$3C43]      A:00E0 X:FA80 Y:0000 P:envmxdIZC
$C2/3C33 A6 66       LDX $66    [$00:0066]   A:00E0 X:FA80 Y:0000 P:envmxdIZC
$C2/3C35 BF 00 00 40 LDA $400000,x[$40:2480] A:00E0 X:2480 Y:0000 P:envmxdIzC
$C2/3C39 29 BF FF    AND #$FFBF              A:0088 X:2480 Y:0000 P:envmxdIzC
$C2/3C3C 9F 00 00 40 STA $400000,x[$40:2480] A:0088 X:2480 Y:0000 P:envmxdIzC
$C2/3C40 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:0088 X:2480 Y:0000 P:envmxdIzC

----------------------------------------------------------------
DOC_ANI-CODE: *jump to address if target not dead
$C2/3C6D A6 66       LDX $66    [$00:0066]   A:00A2 X:00A2 Y:0001 P:enVmxdIzc
$C2/3C6F BF 0A 00 40 LDA $40000A,x[$40:248A] A:00A2 X:2480 Y:0001 P:enVmxdIzc
$C2/3C73 AA          TAX                     A:FA80 X:2480 Y:0001 P:eNVmxdIzc
$C2/3C74 BF 00 00 7E LDA $7E0000,x[$7E:FA80] A:FA80 X:FA80 Y:0001 P:eNVmxdIzc
$C2/3C78 89 40 00    BIT #$0040              A:00E0 X:FA80 Y:0001 P:enVmxdIzc
$C2/3C7B F0 0B       BEQ $0B    [$3C88]      A:00E0 X:FA80 Y:0001 P:enVmxdIzc
$C2/3C7D A5 60       LDA $60    [$00:0060]   A:00E0 X:FA80 Y:0001 P:enVmxdIzc
$C2/3C7F 18          CLC                     A:0474 X:FA80 Y:0001 P:enVmxdIzc
$C2/3C80 69 03 00    ADC #$0003              A:0474 X:FA80 Y:0001 P:enVmxdIzc
$C2/3C83 85 60       STA $60    [$00:0060]   A:0477 X:FA80 Y:0001 P:envmxdIzc
$C2/3C85 4C 4F 0C    JMP $0C4F  [$C2:0C4F]   A:0477 X:FA80 Y:0001 P:envmxdIzc

$C2/3C88 A0 01 00    LDY #$0001              A:0477 X:FA80 Y:0001 P:envmxdIzc
$C2/3C8B B7 60       LDA [$60],y[$F5:0478]   A:0477 X:FA80 Y:0001 P:envmxdIzc
$C2/3C8D 85 60       STA $60    [$00:0060]   A:0407 X:FA80 Y:0001 P:envmxdIzc
$C2/3C8F 4C 4F 0C    JMP $0C4F  [$C2:0C4F]   A:0407 X:FA80 Y:0001 P:envmxdIzc
----------------------------------------------------------------
Defense timing???
$C2/3CD0 AD 00 07    LDA $0700  [$00:0700]   A:00A8 X:00A8 Y:FF0F P:envmxdIzc
$C2/3CD3 89 00 04    BIT #$0400              A:E800 X:00A8 Y:FF0F P:eNvmxdIzc
$C2/3CD6 D0 03       BNE $03    [$3CDB]      A:E800 X:00A8 Y:FF0F P:eNvmxdIZc
$C2/3CD8 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:E800 X:00A8 Y:FF0F P:eNvmxdIZc
After being hit (plays recoil after processor)
C2/3CDB A6 66       LDX $66    [$00:0066]   A:EC00 X:00A8 Y:0001 P:eNVmxdIzc
C2/3CDD BF 00 00 40 LDA $400000,x[$40:2480] A:EC00 X:2480 Y:0001 P:enVmxdIzc
C2/3CE1 09 20 00    ORA #$0020              A:0088 X:2480 Y:0001 P:enVmxdIzc
C2/3CE4 9F 00 00 40 STA $400000,x[$40:2480] A:00A8 X:2480 Y:0001 P:enVmxdIzc
C2/3CE8 E6 60       INC $60    [$00:0060]   A:00A8 X:2480 Y:0001 P:enVmxdIzc
C2/3CEA 4C 4F 0C    JMP $0C4F  [$C2:0C4F]   A:00A8 X:2480 Y:0001
----------------------------------------------------------------
Targeting?
C2/3E00
----------------------------------------------------------------
Command "Run Away"
C2/3F82 ???

C2/3FE2	BF 40 00 7E

Palette
C2/3FAE 85 EE       STA $EE    [$00:00EE]   A:6200 X:2080 Y:2080

Menu command (sets when selected, if successful)
C2/3BD7 A9 05 00	;Set A to 05 (ran away)
	8D 2A 07	;Save to next used command
----------------------------------------------------------------
Draw portrait
C2/3FC2 AA          TAX                     A:FA80 X:0000 Y:2080 
C2/3FC3 BF 00 00 7E LDA $7E0000,x[$7E:FA80] A:FA80 X:FA80 Y:2080 ;load mortal status
C2/3FC7 29 C0 00    AND #$00C0              A:0100 X:FA80 Y:2080 ;isolate
C2/3FCA C9 80 00    CMP #$0080              A:0000 X:FA80 Y:2080 ;check
C2/3FCD F0 75       BEQ $75    [$4044]      A:0000 X:FA80 Y:2080 ;doesn't draw the portrait if fainted or not there
----------------------------------------------------------------
Portraits for Ailments
C2/3FE2 BF 40 00 7E
	29 FF 00
	F0 12
	A2 FF FF
	E8
	4A
	90 FC
Load Portrait for Ailment
	BF 29 41 C2
		...@ $C2/4129...
		05 ;Mute
		03 ;Sleep
		00 ;Poison
		04 ;Fear
		06 ;*confuse
		07 ;Mushroom
		08 ;Scarecrow
		02 ;Invincible/Invulnerable/Red Essence

	29 FF 00
	85 E4
	80 12

Faint Portrait
C2/3FFD	BF 41 00 7E
C2/4001	89 80 00
C2/4004	D0 04
C2/4006	64 E4
C2/4008	80 05
C2/400A	A9 01 00
C2/400D	85 E4

Coordinates for Battle Portrait?
C2/400F A6 CE
	BF 31 41 C2	; coords for characters 1-3


Palette
C2/4042 85 EE       STA $EE    [$00:00EE]   A:6400 X:0000 Y:0008

C2/4044 A6 CE       LDX $CE    [$00:00CE]   A:0080 X:FB00 Y:0008 P:envmxdIZC
C2/4046 E8          INX                     A:0080 X:0002 Y:0008 P:envmxdIzC
C2/4047 E8          INX                     A:0080 X:0003 Y:0008 P:envmxdIzC
C2/4048 E0 05 00    CPX #$0005              A:0080 X:0004 Y:0008 P:envmxdIzC
C2/404B 10 03       BPL $03    [$4050]      A:0080 X:0004 Y:0008 P:eNvmxdIzc
C2/404D 4C BC 3F    JMP $3FBC  [$C2:3FBC]   A:0080 X:0004 Y:0008 P:eNvmxdIzc

----------------------------------------------------------------
...???
C2/41DB A9 0F 00 (set number of characters to display from Spell Name)

----------------------------------------------------------------
Animation: Recoil
C2/43B8 A6 66       LDX $66    [$00:0066]   A:00D8 X:00D8 Y:0001
$C2/43BA 9B          TXY                     A:00D8 X:2480 Y:0001
$C2/43BB BF 08 00 40 LDA $400008,x[$40:2488] A:00D8 X:2480 Y:2480
$C2/43BF 0A          ASL A                   A:0000 X:2480 Y:2480
$C2/43C0 AA          TAX                     A:0000 X:2480 Y:2480
$C2/43C1 7C C4 43    JMP ($43C4,x)[$C2:43C8] A:0000 X:0000 Y:2480

$C2/43C8 AD 40 30    LDA $3040  [$00:3040]   A:0000 X:0000 Y:2480
$C2/43CB 89 01 00    BIT #$0001              A:08B8 X:0000 Y:2480
$C2/43CE F0 03       BEQ $03    [$43D3]      A:08B8 X:0000 Y:2480

C2/43D0 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:14C1 X:0000 Y:2480

$C2/43D3 BB          TYX                     A:08B8 X:0000 Y:2480
$C2/43D4 A9 01 00    LDA #$0001              A:08B8 X:2480 Y:2480
C2/43D7 9F 08 00 40 STA $400008,x[$40:2488] A:0001 X:2480 Y:2480
C2/43DB A9 21 00    LDA #$0021              A:0001 X:2480 Y:2480
C2/43DE EB          XBA                     A:0021 X:2480 Y:2480
C2/43DF 09 01 00    ORA #$0001              A:2100 X:2480 Y:2480
C2/43E2 85 E0       STA $E0    [$00:00E0]   A:2101 X:2480 Y:2480
C2/43E4 64 EC       STZ $EC    [$00:00EC]   A:2101 X:2480 Y:2480
C2/43E6 64 EE       STZ $EE    [$00:00EE]   A:2101 X:2480 Y:2480
C2/43E8 64 E6       STZ $E6    [$00:00E6]   A:2101 X:2480 Y:2480
C2/43EA BF 0A 00 40 LDA $40000A,x[$40:248A] A:2101 X:2480 Y:2480
C2/43EE AA          TAX                     A:FA80 X:2480 Y:2480
C2/43EF A8          TAY                     A:FA80 X:FA80 Y:2480
C2/43F0 BF 2D 00 7E LDA $7E002D,x[$7E:FAAD] A:FA80 X:FA80 Y:FA80 ;load sprite index (it's saved to the character before battle)
C2/43F4 29 FF 00    AND #$00FF              A:0002 X:FA80 Y:FA80
C2/43F7 85 E2       STA $E2    [$00:00E2]   A:0002 X:FA80 Y:FA80
C2/43F9 BB          TYX                     A:0002 X:FA80 Y:FA80
C2/43FA BF 42 00 7E LDA $7E0042,x[$7E:FAC2] A:0002 X:FA80 Y:FA80
C2/43FE 89 04 00    BIT #$0004              A:0400 X:FA80 Y:FA80
C2/4401 F0 07       BEQ $07    [$440A]      A:0400 X:FA80 Y:FA80
Defense
C2/440A BF 41 00 7E LDA $7E0041,x[$7E:FAC1] A:0400 X:FA80 Y:FA80 ;Load statuses
C2/440E 89 04 00    BIT #$0004              A:0000 X:FA80 Y:FA80 ;Check if Defense bit set
C2/4411 F0 25       BEQ $25    [$4438]      A:0000 X:FA80 Y:FA80 ;Branch if not equal [$4438]

C2/4438 BF 44 00 7E LDA $7E0044,x[$7E:FAC4] A:0000 X:FA80 Y:FA80
C2/443C 89 80 00    BIT #$0080              A:0187 X:FA80 Y:FA80
C2/443F F0 0A       BEQ $0A    [$444B]      A:0187 X:FA80 Y:FA80
C2/4441 BF 45 00 7E LDA $7E0045,x[$7E:FAC5] A:0187 X:FA80 Y:FA80
C2/4445 F0 0A       BEQ $0A    [$4451]      A:0001 X:FA80 Y:FA80
C2/4447 30 08       BMI $08    [$4451]      A:0001 X:FA80 Y:FA80
C2/4449 80 11       BRA $11    [$445C]      A:0001 X:FA80 Y:FA80

C2/445C A9 03 00    LDA #$0003              A:0001 X:FA80 Y:FA80 ;set sequence number
C2/445F 85 E4       STA $E4    [$00:00E4]   A:0003 X:FA80 Y:FA80
C2/4461 BF 42 00 7E LDA $7E0042,x[$7E:FAC2] A:0003 X:FA80 Y:FA80
C2/4465 29 FB FF    AND #$FFFB              A:0400 X:FA80 Y:FA80
C2/4468 9F 42 00 7E STA $7E0042,x[$7E:FAC2] A:0400 X:FA80 Y:FA80
C2/446C BF 40 00 7E LDA $7E0040,x[$7E:FAC0] A:0400 X:FA80 Y:FA80
C2/4470 29 FF 00    AND #$00FF              A:0020 X:FA80 Y:FA80
C2/4473 F0 2A       BEQ $2A    [$449F]      A:0020 X:FA80 Y:FA80
C2/4475 A2 FF FF    LDX #$FFFF              A:0020 X:FA80 Y:FA80

C2/4478 E8          INX                     A:0020 X:FFFF Y:FA80
C2/4479 4A          LSR A                   A:0020 X:0000 Y:FA80
C2/447A 90 FC       BCC $FC    [$4478]      A:0010 X:0000 Y:FA80

C2/447C 8A          TXA                     A:0000 X:0005 Y:FA80
C2/447D 0A          ASL A                   A:0005 X:0005 Y:FA80
C2/447E AA          TAX                     A:000A X:0005 Y:FA80
C2/447F FC 00 45    JSR ($4500,x)[$C2:4519] A:000A X:000A Y:FA80 ; Animation: Recoil with newly inflicted ailment (allies)
C2/4482 BB          TYX                     A:001E X:000A Y:FA80
C2/4483 BF 43 00 7E LDA $7E0043,x[$7E:FAC3] A:001E X:FA80 Y:FA80 
C2/4487 29 FF 00    AND #$00FF              A:8704 X:FA80 Y:FA80 
C2/448A C9 04 00    CMP #$0004              A:0004 X:FA80 Y:FA80 
C2/448D 30 10       BMI $10    [$449F]      A:0004 X:FA80 Y:FA80 
C2/448F BF 43 00 7E LDA $7E0043,x[$7E:FAC3] A:0004 X:FA80 Y:FA80 
C2/4493 29 00 FF    AND #$FF00              A:8704 X:FA80 Y:FA80 
C2/4496 09 03 00    ORA #$0003              A:8700 X:FA80 Y:FA80 ;Timer for status ailments
C2/4499 9F 43 00 7E STA $7E0043,x[$7E:FAC3] A:8703 X:FA80 Y:FA80
C2/449D 80 00       BRA $00    [$449F]      A:8703 X:FA80 Y:FA80

C2/449F A6 66       LDX $66    [$00:0066]   A:8703 X:FA80 Y:FA80
C2/44A1 9B          TXY                     A:8703 X:2480 Y:FA80
C2/44A2 BF 0E 00 40 LDA $40000E,x[$40:248E] A:8703 X:2480 Y:2480
C2/44A6 AA          TAX                     A:4040 X:2480 Y:2480
C2/44A7 A5 E6       LDA $E6    [$00:00E6]   A:4040 X:4040 Y:2480
C2/44A9 F0 0C       BEQ $0C    [$44B7]      A:0000 X:4040 Y:2480

C2/44B7 BF 13 00 40 LDA $400013,x[$40:4053] A:0000 X:4040 Y:2480
C2/44BB 85 E8       STA $E8    [$00:00E8]   A:8046 X:4040 Y:2480
C2/44BD 20 01 73    JSR $7301  [$C2:7301]   A:8046 X:4040 Y:2480
Animation: Palette
C2/44C0 BF 15 00 40 LDA $400015,x[$40:4055] A:0008 X:4040 Y:0008
C2/44C4 29 00 FF    AND #$FF00              A:7C00 X:4040 Y:0008
C2/44C7 05 EE       ORA $EE    [$00:00EE]   A:7C00 X:4040 Y:0008
C2/44C9 9F 15 00 40 STA $400015,x[$40:4055] A:7C1E X:4040 Y:0008

C2/44CD A5 E8       LDA $E8    [$00:00E8]   A:7C1E X:4040 Y:0008
C2/44CF 9F 13 00 40 STA $400013,x[$40:4053] A:8046 X:4040 Y:0008
C2/44D3 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:8046 X:4040 Y:0008

----------------------------------------------------------------
C2/44D6 BB          TYX                     A:0002 X:0002 Y:2480 P:enVmxdIzc
$C2/44D7 BF 0E 00 40 LDA $40000E,x[$40:248E] A:0002 X:2480 Y:2480 P:enVmxdIzc
$C2/44DB AA          TAX                     A:4040 X:2480 Y:2480 P:enVmxdIzc
$C2/44DC BF 01 00 40 LDA $400001,x[$40:4041] A:4040 X:4040 Y:2480 P:enVmxdIzc
$C2/44E0 89 14 00    BIT #$0014              A:8001 X:4040 Y:2480 P:eNVmxdIzc
$C2/44E3 D0 03       BNE $03    [$44E8]      A:8001 X:4040 Y:2480 P:eNVmxdIZc
$C2/44E5 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:8001 X:4040 Y:2480
----------------------------------------------------------------
Animation: Recoil with newly inflicted ailment (allies)
C2/4500 10 45	;Mute
	11 45	;Sleep
	12 45	;Poison
	1A 45	;Fear
	1B 45	;*Confuse
	1C 45	;Mushroom
	3B 45	;Scarecrow
	5A 45	;Invincible/Invulnerable/Red Essence

==Mute==
C2/4510 60          RTS                     A:0000 X:EDE0 Y:ED60
==Sleep==
C2/4511 60          RTS                     A:0000 X:EDE0 Y:ED60
==Poison==
C2/4512 A9 3C 00    LDA #$003C              A:0000 X:EDE0 Y:ED60
C2/4515 85 EE       STA $EE    [$00:00EE]   A:0000 X:EDE0 Y:ED60
C2/4517 64 E6       STZ $E6    [$00:00E6]   A:0000 X:EDE0 Y:ED60
C2/4519 60          RTS                     A:0000 X:EDE0 Y:ED60
==Fear==
C2/451A 60          RTS                     A:0000 X:EDE0 Y:ED60
==Confuse==
C2/451B 60          RTS                     A:0000 X:EDE0 Y:ED60
==Mushroom==
C2/451C A9 26 00    LDA #$0026              A:0000 X:EDE0 Y:ED60 ;set sprite number
C2/451F 85 E2       STA $E2    [$00:00E2]   A:0000 X:EDE0 Y:ED60
C2/4521 BB          TYX                     A:0000 X:EDE0 Y:ED60
C2/4522 BF 43 00 7E LDA $7E0043,x[$7E:EE23] A:0000 X:EDE0 Y:ED60 ;load turn timer
C2/4526 29 FF 00    AND #$00FF              A:0000 X:EDE0 Y:ED60 ;isolate
C2/4529 C9 04 00    CMP #$0004              A:0000 X:EDE0 Y:ED60 ;compare to 4
C2/452C D0 0C       BNE $0C    [$453A]      A:0000 X:EDE0 Y:ED60
C2/452E A9 10 00    LDA #$0010              A:0000 X:EDE0 Y:ED60
C2/4531 14 E1       TRB $E1    [$00:00E1]   A:0000 X:EDE0 Y:ED60
C2/4533 A9 06 00    LDA #$0006              A:0000 X:EDE0 Y:ED60 ;set recoil animation sequence
C2/4536 85 E4       STA $E4    [$00:00E4]   A:0000 X:EDE0 Y:ED60
C2/4538 64 E6       STZ $E6    [$00:00E6]   A:0000 X:EDE0 Y:ED60
C2/453A 60          RTS                     A:0000 X:EDE0 Y:ED60
==Scarecrow==
C2/453B A9 27 00    LDA #$0027              A:0000 X:EDE0 Y:ED60 ;set sprite number
C2/453E 85 E2       STA $E2    [$00:00E2]   A:0000 X:EDE0 Y:ED60
C2/4540 BB          TYX                     A:0000 X:EDE0 Y:ED60
C2/4541 BF 43 00 7E LDA $7E0043,x[$7E:EE23] A:0000 X:EDE0 Y:ED60 ;load turn timer
C2/4545 29 FF 00    AND #$00FF              A:0000 X:EDE0 Y:ED60 ;isolate
C2/4548 C9 04 00    CMP #$0004              A:0000 X:EDE0 Y:ED60 ;compare to 4
C2/454B D0 0C       BNE $0C    [$4559]      A:0000 X:EDE0 Y:ED60
C2/454D A9 10 00    LDA #$0010              A:0000 X:EDE0 Y:ED60
C2/4550 14 E1       TRB $E1    [$00:00E1]   A:0000 X:EDE0 Y:ED60
C2/4552 A9 06 00    LDA #$0006              A:0000 X:EDE0 Y:ED60
C2/4555 85 E4       STA $E4    [$00:00E4]   A:0000 X:EDE0 Y:ED60
C2/4557 64 E6       STZ $E6    [$00:00E6]   A:0000 X:EDE0 Y:ED60
C2/4559 60          RTS                     A:0000 X:EDE0 Y:ED60
==Invincible/Invulnerable/Red Essence==
C2/455A 64 E4       STZ $E4    [$00:00E4]   A:0000 X:EDE0 Y:ED60	;resets to 0 (plays animation if defending)
C2/455C 60          RTS                     A:0000 X:EDE0 Y:ED60

----------------------------------------------------------------
Jump from C2/0C5C (with A = 00DA)
Animation: Recoil
C2/4562 A6 66       LDX $66    [$00:0066]   A:00DA X:00DA Y:0020
C2/4564 9B          TXY                     A:00DA X:2480 Y:0020
C2/4565 BF 0A 00 40 LDA $40000A,x[$40:248A] A:00DA X:2480 Y:2480
C2/4569 AA          TAX                     A:FA80 X:2480 Y:2480
C2/456A BF 01 00 7E LDA $7E0001,x[$7E:FA81] A:FA80 X:FA80 Y:2480
C2/456E 29 FF 00    AND #$00FF              A:0000 X:FA80 Y:2480
C2/4571 AA          TAX                     A:0000 X:FA80 Y:2480
C2/4572 BF 7F 46 C2 LDA $C2467F,x[$C2:467F] A:0000 X:0000 Y:2480
C2/4576 29 FF 00    AND #$00FF              A:0C06 X:0000 Y:2480
C2/4579 85 E0       STA $E0    [$00:00E0]   A:0006 X:0000 Y:2480
C2/457B BB          TYX                     A:0006 X:0000 Y:2480
C2/457C BF 0E 00 40 LDA $40000E,x[$40:248E] A:0006 X:2480 Y:2480
C2/4580 AA          TAX                     A:4040 X:2480 Y:2480
C2/4581 BF 05 00 40 LDA $400005,x[$40:4045] A:4040 X:4040 Y:2480
C2/4585 29 FF 00    AND #$00FF              A:0505 X:4040 Y:2480
C2/4588 85 E4       STA $E4    [$00:00E4]   A:0005 X:4040 Y:2480
Palette
C2/458A BF 15 00 40 LDA $400015,x[$40:4055] A:0005 X:4040 Y:2480
C2/458E 29 FF 00    AND #$00FF              A:7C00 X:4040 Y:2480
C2/4591 85 EE       STA $EE    [$00:00EE]   A:0000 X:4040 Y:2480

C2/4593 BF 03 00 40 LDA $400003,x[$40:4043] A:0000 X:4040 Y:2480
C2/4597 C5 E0       CMP $E0    [$00:00E0]   A:0002 X:4040 Y:2480
C2/4599 D0 03       BNE $03    [$459E]      A:0002 X:4040 Y:2480
C2/459E BB          TYX                     A:0002 X:4040 Y:2480
C2/459F BF 0A 00 40 LDA $40000A,x[$40:248A] A:0002 X:2480 Y:2480
C2/45A3 AA          TAX                     A:FA80 X:2480 Y:2480
C2/45A4 BF 44 00 7E LDA $7E0044,x[$7E:FAC4] A:FA80 X:FA80 Y:2480
C2/45A8 89 80 00    BIT #$0080              A:0087 X:FA80 Y:2480
C2/45AB F0 39       BEQ $39    [$45E6]      A:0087 X:FA80 Y:2480
C2/45AD BF 45 00 7E LDA $7E0045,x[$7E:FAC5] A:0087 X:FA80 Y:2480
C2/45B1 10 33       BPL $33    [$45E6]      A:0000 X:FA80 Y:2480

C2/45B3 BF 40 00 7E LDA $7E0040,x[$7E:FAC0] A:8007 X:FA80 Y:2480 
C2/45B7 29 FF 00    AND #$00FF              A:0310 X:FA80 Y:2480 
C2/45BA D0 2A       BNE $2A    [$45E6]      A:0010 X:FA80 Y:2480

Animation: Defense/Defending
C2/45E6 BF 41 00 7E LDA $7E0041,x[$7E:FAC1] A:0000 X:FA80 Y:2480
C2/45EA 89 04 00    BIT #$0004              A:0000 X:FA80 Y:2480
C2/45ED F0 0C       BEQ $0C    [$45FB]      A:0000 X:FA80 Y:2480

C2/45EF A9 10 00    LDA #$0010              A:0007 X:FB00 Y:2500
C2/45F2 85 E0       STA $E0    [$00:00E0]   A:0010 X:FB00 Y:2500
C2/45F4 A9 05 00    LDA #$0005              A:0010 X:FB00 Y:2500
C2/45F7 85 E4       STA $E4    [$00:00E4]   A:0005 X:FB00 Y:2500
C2/45F9 80 5B       BRA $5B    [$4656]      A:0005 X:FB00 Y:2500

C2/45FB A9 10 00    LDA #$0010              A:0000 X:FA80 Y:2480
C2/45FE 85 E0       STA $E0    [$00:00E0]   A:0010 X:FA80 Y:2480
C2/4600 A9 00 FF    LDA #$FF00              A:0010 X:FA80 Y:2480
C2/4603 85 E4       STA $E4    [$00:00E4]   A:FF00 X:FA80 Y:2480
C2/4605 64 EE       STZ $EE    [$00:00EE]   A:FF00 X:FA80 Y:2480

Animation: Idle character ailment animations
C2/4607 BF 43 00 7E LDA $7E0043,x[$7E:FAC3] A:FF00 X:FA80 Y:2480
C2/460B 29 FF 00    AND #$00FF              A:8703 X:FA80 Y:2480
C2/460E C9 04 00    CMP #$0004              A:0003 X:FA80 Y:2480
C2/4611 F0 43       BEQ $43    [$4656]      A:0003 X:FA80 Y:2480
C2/4613 BF 40 00 7E LDA $7E0040,x[$7E:FAC0] A:0003 X:FA80 Y:2480
C2/4617 29 FF 00    AND #$00FF              A:0020 X:FA80 Y:2480
C2/461A F0 3A       BEQ $3A    [$4656]      A:0020 X:FA80 Y:2480
Ailment: Sleep
C2/461C 89 02 00    BIT #$0002              A:0002 X:FA80 Y:2480
C2/461F F0 0C       BEQ $0C    [$462D]      A:0002 X:FA80 Y:2480
C2/4621 A9 08 00    LDA #$0008              A:0002 X:FA80 Y:2480
C2/4624 85 E0       STA $E0    [$00:00E0]   A:0008 X:FA80 Y:2480
C2/4626 A9 06 00    LDA #$0006              A:0008 X:FA80 Y:2480
C2/4629 85 E4       STA $E4    [$00:00E4]   A:0006 X:FA80 Y:2480
C2/462B 80 29       BRA $29    [$4656]      A:0006 X:FA80 Y:2480
Ailment: Fear
C2/462D 89 08 00    BIT #$0008              A:0020 X:FA80 Y:2480
C2/4630 F0 0C       BEQ $0C    [$463E]      A:0020 X:FA80 Y:2480
C2/4632 A9 08 00    LDA #$0008              A:0008 X:FA80 Y:2480
C2/4635 85 E0       STA $E0    [$00:00E0]   A:0008 X:FA80 Y:2480
C2/4637 A9 0B 00    LDA #$000B              A:0008 X:FA80 Y:2480
C2/463A 85 E4       STA $E4    [$00:00E4]   A:000B X:FA80 Y:2480
C2/463C 80 18       BRA $18    [$4656]      A:000B X:FA80 Y:2480
Ailment: Mute
C2/463E 89 01 00    BIT #$0001              A:0001 X:FA80 Y:2480
C2/4641 F0 07       BEQ $07    [$464A]      A:0001 X:FA80 Y:2480
C2/4643 A9 0D 00    LDA #$000D              A:0001 X:FA80 Y:2480
C2/4646 85 E4       STA $E4    [$00:00E4]   A:000D X:FA80 Y:2480
C2/4648 80 0C       BRA $0C    [$4656]      A:000D X:FA80 Y:2480
Ailment: Poison
C2/464A 89 04 00    BIT #$0004              A:0004 X:FA80 Y:2480
C2/464D F0 07       BEQ $07    [$4656]      A:0004 X:FA80 Y:2480
C2/464F A9 3C 00    LDA #$003C              A:0004 X:FA80 Y:2480
C2/4652 85 EE       STA $EE    [$00:00EE]   A:003C X:FA80 Y:2480
C2/4654 80 00       BRA $00    [$4656]      A:003C X:FA80 Y:2480

C2/4656 BB          TYX                     A:0020 X:FA80 Y:2480
C2/4657 BF 0E 00 40 LDA $40000E,x[$40:248E] A:0020 X:2480 Y:2480
C2/465B AA          TAX                     A:4040 X:2480 Y:2480
C2/465C E2 20       SEP #$20                A:4040 X:4040 Y:2480
C2/465E BF 01 00 40 LDA $400001,x[$40:4041] A:4040 X:4040 Y:2480
C2/4662 29 E3       AND #$E3                A:4010 X:4040 Y:2480
C2/4664 09 20       ORA #$20                A:4000 X:4040 Y:2480
C2/4666 05 E0       ORA $E0    [$00:00E0]   A:4020 X:4040 Y:2480
C2/4668 9F 01 00 40 STA $400001,x[$40:4041] A:4030 X:4040 Y:2480
C2/466C A5 EE       LDA $EE    [$00:00EE]   A:4030 X:4040 Y:2480
C2/466E 9F 15 00 40 STA $400015,x[$40:4055] A:4000 X:4040 Y:2480
C2/4672 C2 20       REP #$20                A:4000 X:4040 Y:2480
C2/4674 A5 E4       LDA $E4    [$00:00E4]   A:4000 X:4040 Y:2480
C2/4676 9F 05 00 40 STA $400005,x[$40:4045] A:FF00 X:4040 Y:2480
C2/467A E6 60       INC $60    [$00:0060]   A:FF00 X:4040 Y:2480
C2/467C 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:FF00 X:4040 Y:2480

----------------------------------------------------------------
C2/46A1 ;start?

numeral display
C2/46BB BF 44 00 7E LDA $7E0044,x[$7E:FC44] A:0000 X:FC00 Y:2400 P:eNvmxdIzc
$C2/46BF 89 80 00    BIT #$0080              A:0180 X:FC00 Y:2400 P:envmxdIzc
$C2/46C2 F0 0A       BEQ $0A    [$46CE]      A:0180 X:FC00 Y:2400 P:envmxdIzc
$C2/46C4 BF 45 00 7E LDA $7E0045,x[$7E:FC45] A:0180 X:FC00 Y:2400 P:envmxdIzc
$C2/46C8 F0 43       BEQ $43    [$470D]      A:0001 X:FC00 Y:2400 P:envmxdIzc
C2/46CA 10 08       BPL $08    [$46D4]      A:0001 X:FC00 Y:2400 P:envmxdIzc
$C2/46D4 BB          TYX                     A:0001 X:FC00 Y:2400 P:envmxdIzc
$C2/46D5 BF 0E 00 40 LDA $40000E,x[$40:240E] A:0001 X:2400 Y:2400 P:envmxdIzc
$C2/46D9 AA          TAX                     A:4000 X:2400 Y:2400 P:envmxdIzc
$C2/46DA E2 20       SEP #$20                A:4000 X:4000 Y:2400 P:envmxdIzc
$C2/46DC BF 01 00 40 LDA $400001,x[$40:4001] A:4000 X:4000 Y:2400 P:envMxdIzc
$C2/46E0 29 E3       AND #$E3                A:4008 X:4000 Y:2400 P:envMxdIzc
$C2/46E2 9F 01 00 40 STA $400001,x[$40:4001] A:4000 X:4000 Y:2400 P:envMxdIZc
$C2/46E6 A9 02       LDA #$02                A:4000 X:4000 Y:2400 P:envMxdIZc
$C2/46E8 9F 05 00 40 STA $400005,x[$40:4005] A:4002 X:4000 Y:2400 P:envMxdIzc
$C2/46EC BF 2D 00 40 LDA $40002D,x[$40:402D] A:4002 X:4000 Y:2400 P:envMxdIzc
$C2/46F0 29 BF       AND #$BF                A:402A X:4000 Y:2400 P:envMxdIzc
$C2/46F2 9F 2D 00 40 STA $40002D,x[$40:402D] A:402A X:4000 Y:2400 P:envMxdIzc

----------------------------------------------------------------
DOC_ANI-CODE: <7A> Display battle dialogue
...
C2/4B90 AF 14 00 F9	;load dialogue pointers
----------------------------------------------------------------
DOC_ANI-CODE: <7D> ??? game over stuff
C2/4D5B BB          TYX                     A:000A X:000A Y:2000
C2/4D5C A9 06 00    LDA #$0006              A:000A X:2000 Y:2000 
C2/4D5F 9F 60 00 40 STA $400060,x[$40:2060] A:0006 X:2000 Y:2000
C2/4D63 A9 68 00    LDA #$0068              A:0006 X:2000 Y:2000
C2/4D66 9F 62 00 40 STA $400062,x[$40:2062] A:0068 X:2000 Y:2000
C2/4D6A A9 1E 00    LDA #$001E              A:0068 X:2000 Y:2000 
C2/4D6D 8D 00 1D    STA $1D00  [$00:1D00]   A:001E X:2000 Y:2000
C2/4D70 9C 02 1D    STZ $1D02  [$00:1D02]   A:001E X:2000 Y:2000
C2/4D73 22 00 00 C4 JSL $C40000[$C4:0000]   A:001E X:2000 Y:2000 ;fades music

C2/4D77 A9 0E 00    LDA #$000E              A:001E X:2000 Y:2000 ;set dialogue index ("Game Over...!")
C2/4D7A 85 E0       STA $E0    [$00:00E0]   A:000E X:2000 Y:2000
C2/4D7C 4C DD 4C    JMP $4CDD  [$C2:4CDD]   A:000E X:2000 Y:2000
----------------------------------------------------------------
Monster: Sleep/Idle animation
C2/0C5C 7C 3D 0D    JMP ($0D3D,x)[$C2:5172] A:00FE X:00FE Y:0020

C2/5172 A6 66       LDX $66    [$00:0066]   A:00FE X:00FE Y:0020
C2/5174 64 E2       STZ $E2    [$00:00E2]   A:00FE X:2400 Y:0020
C2/5176 64 E4       STZ $E4    [$00:00E4]   A:00FE X:2400 Y:0020
C2/5178 9B          TXY                     A:00FE X:2400 Y:0020
C2/5179 BF 0A 00 40 LDA $40000A,x[$40:240A] A:00FE X:2400 Y:2400
C2/517D AA          TAX                     A:FC00 X:2400 Y:2400
C2/517E BF 40 00 7E LDA $7E0040,x[$7E:FC40] A:FC00 X:FC00 Y:2400 ;Load ailments from monster
C2/5182 89 02 00    BIT #$0002              A:8000 X:FC00 Y:2400 ;check for Sleep
C2/5185 F0 05       BEQ $05    [$518C]      A:8000 X:FC00 Y:2400
C2/5187 A9 10 00    LDA #$0010              A:8000 X:FC00 Y:2400
C2/518A 80 03       BRA $03    [$518F]      A:0010 X:FC00 Y:2400
C2/518C A9 08 00    LDA #$0008              A:0010 X:FC00 Y:2400
C2/518F 85 E2       STA $E2    [$00:00E2]   A:0008 X:FC00 Y:2400
C2/5191 BB          TYX                     A:0008 X:FC00 Y:2400
C2/5192 BF 0E 00 40 LDA $40000E,x[$40:240E] A:0008 X:2400 Y:2400
C2/5196 AA          TAX                     A:4000 X:2400 Y:2400
C2/5196 AA          TAX                     A:4000 X:2400 Y:2400
C2/5197 E2 20       SEP #$20                A:4000 X:4000 Y:2400
C2/5199 BF 01 00 40 LDA $400001,x[$40:4001] A:4000 X:4000 Y:2400
C2/519D 29 E3       AND #$E3                A:4004 X:4000 Y:2400 
C2/519F 05 E2       ORA $E2    [$00:00E2]   A:4000 X:4000 Y:2400
C2/51A1 9F 01 00 40 STA $400001,x[$40:4001] A:4008 X:4000 Y:2400 
C2/51A5 A5 E4       LDA $E4    [$00:00E4]   A:4008 X:4000 Y:2400 
C2/51A7 9F 05 00 40 STA $400005,x[$40:4005] A:4000 X:4000 Y:2400
C2/51AB BF 2D 00 40 LDA $40002D,x[$40:402D] A:4000 X:4000 Y:2400
C2/51AF 29 BF       AND #$BF                A:402A X:4000 Y:2400
C2/51B1 9F 2D 00 40 STA $40002D,x[$40:402D] A:402A X:4000 Y:2400
C2/51B5 C2 20       REP #$20                A:402A X:4000 Y:2400 
C2/51B7 E6 60       INC $60    [$00:0060]   A:402A X:4000 Y:2400
C2/51B9 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:402A X:4000 Y:2400
----------------------------------------------------------------
A7> ??? weapon timing?
C2/5E4D	A6 66
	9B
	BF 08 00 40
C2/5E54 0A          ASL A                   A:0000 X:2480 Y:2480
C2/5E55 AA          TAX                     A:0000 X:2480 Y:2480
C2/5E56 7C 59 5E    JMP ($5E59,x)[$C2:5E5D] A:0000 X:0000 Y:2480

	 5D 5E
	 68 5E 

C2/5E5D BB          TYX                     A:0000 X:0000 Y:2480
C2/5E5E A9 01 00    LDA #$0001              A:0000 X:2480 Y:2480
C2/5E61 9F 08 00 40 STA $400008,x[$40:2488] A:0001 X:2480 Y:2480
C2/5E65 9C 4C 30    STZ $304C  [$00:304C]   A:0001 X:2480 Y:2480
C2/5E68 BB          TYX                     A:0001 X:2480 Y:2480
C2/5E69 BF 0E 00 40 LDA $40000E,x[$40:248E] A:0001 X:2480 Y:2480
C2/5E6D AA          TAX                     A:4040 X:2480 Y:2480
C2/5E6E BF 01 00 40 LDA $400001,x[$40:4041] A:4040 X:4040 Y:2480
C2/5E72 89 04 00    BIT #$0004              A:0000 X:4040 Y:2480
C2/5E75 D0 03       BNE $03    [$5E7A]      A:0000 X:4040 Y:2480
C2/5E77 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:0000 X:4040 Y:2480

weapon timing
C2/5E7A BB          TYX                     A:0004 X:4040 Y:2480
C2/5E7B A9 00 00    LDA #$0000              A:0004 X:2480 Y:2480
C2/5E7E 9F 08 00 40 STA $400008,x[$40:2488] A:0000 X:2480 Y:2480
C2/5E82 AE 30 07    LDX $0730  [$00:0730]   A:0000 X:2480 Y:2480
C2/5E85 BF 44 00 7E LDA $7E0044,x[$7E:FC44] A:0000 X:FC00 Y:2480
C2/5E89 89 80 00    BIT #$0080              A:0180 X:FC00 Y:2480
C2/5E8C D0 10       BNE $10    [$5E9E]      A:0180 X:FC00 Y:2480

C2/5E9E A2 00 00    LDX #$0000              A:0180 X:FC00 Y:2480
C2/5EA1 22 18 A0 C2 JSL $C2A018[$C2:A018]   A:0180 X:0000 Y:2480 ;load timing for weapons/defense/spells
C2/5EA5 A5 B0       LDA $B0    [$00:00B0]   A:000B X:FC00 Y:2480
C2/5EA7 30 0A       BMI $0A    [$5EB3]      A:0000 X:FC00 Y:2480
C2/5EA9 A0 01 00    LDY #$0001              A:0000 X:FC00 Y:2480
C2/5EAC B7 60       LDA [$60],y[$F5:895B]   A:0000 X:FC00 Y:0001
C2/5EAE 85 60       STA $60    [$00:0060]   A:89BF X:FC00 Y:0001
C2/5EB0 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:89BF X:FC00 Y:0001


Timing???
C2/6624 A2 02 00    LDX #$0002              A:0194 X:0194 Y:2480
C2/6627 22 18 A0 C2 JSL $C2A018[$C2:A018]   A:0194 X:0002 Y:2480 ;load timing for weapons/defense/spells
C2/662B AE 30 07    LDX $0730  [$00:0730]   A:0000 X:FA80 Y:FF0F
C2/662E BF 44 00 7E LDA $7E0044,x[$7E:FAC4] A:0000 X:FA80 Y:FF0F
C2/6632 89 80 00    BIT #$0080              A:0080 X:FA80 Y:FF0F
C2/6635 D0 1E       BNE $1E    [$6655]      A:0080 X:FA80 Y:FF0F

C2/6655 E6 60       INC $60    [$00:0060]   A:0080 X:FA80 Y:FF0F
C2/6657 4C 5F 0C    JMP $0C5F  [$C2:0C5F]   A:0080 X:FA80 Y:FF0F
----------------------------------------------------------------
<E6> Resets status of ally?
C2/6D96 BF 4F 00 7E	;Loads status for equips
	29 FF 00	;
	9F 41 00 7E	;Saves buffs for battle status
	A9 01 00	;
	9F 11 00 7E	;Set HP to 1

----------------------------------------------------------------
GFX: Loads index for target arrow tiles and numerals graphics

...from C2/8DD2 JSR...
C2/6F40 E2 20
	A2 00 60	;load at C0 in VRAM (because everything loads starting at $60 I guess)
...
	A9 18
	8D 01 43
C2/6F52 A2 00 F8	;loads index @C3/F800
	8E 02 43
	A9 C3		;loads at Bank C3
	8D 04 43
	A2 00 04
	8E 05 43
	A9 01
	8D 0B 42
	C2 20
	60		;return

----------------------------------------------------------------
Ally: Load Animation Data?
C2/7301 86 D0       STX $D0    [$00:00D0]   A:4040 X:4040 Y:2480
C2/7303 A5 E0       LDA $E0    [$00:00E0]   A:4040 X:4040 Y:2480
C2/7305 29 3F FD    AND #$FD3F              A:3101 X:4040 Y:2480
C2/7308 85 D8       STA $D8    [$00:00D8]   A:3101 X:4040 Y:2480
C2/730A BF 00 00 40 LDA $400000,x[$40:4040] A:3101 X:4040 Y:2480
C2/730E 29 C0 02    AND #$02C0              A:10C1 X:4040 Y:2480
C2/7311 05 D8       ORA $D8    [$00:00D8]   A:00C0 X:4040 Y:2480
C2/7313 9F 00 00 40 STA $400000,x[$40:4040] A:31C1 X:4040 Y:2480
C2/7317 A9 00 00    LDA #$0000              A:31C1 X:4040 Y:2480
C2/731A 9F 02 00 40 STA $400002,x[$40:4042] A:0000 X:4040 Y:2480
C2/731E A5 E2       LDA $E2    [$00:00E2]   A:0000 X:4040 Y:2480
C2/7320 9F 03 00 40 STA $400003,x[$40:4043] A:0002 X:4040 Y:2480
C2/7324 0A          ASL A                   A:0002 X:4040 Y:2480
C2/7325 0A          ASL A                   A:0004 X:4040 Y:2480
C2/7326 AA          TAX                     A:0008 X:4040 Y:2480
C2/7327 BF 02 00 E5 LDA $E50002,x[$E5:000A] A:0008 X:0008 Y:2480
C2/732B 85 DA       STA $DA    [$00:00DA]   A:010C X:0008 Y:2480
C2/732D BF 00 00 E5 LDA $E50000,x[$E5:0008] A:010C X:0008 Y:2480
C2/7331 85 D8       STA $D8    [$00:00D8]   A:0130 X:0008 Y:2480
C2/7333 29 FF 01    AND #$01FF              A:0130 X:0008 Y:2480
C2/7336 0A          ASL A                   A:0130 X:0008 Y:2480
C2/7337 0A          ASL A                   A:0260 X:0008 Y:2480
C2/7338 AA          TAX                     A:04C0 X:0008 Y:2480
C2/7339 BF 00 18 E5 LDA $E51800,x[$E5:1CC0] A:04C0 X:04C0 Y:2480
C2/733D 85 DC       STA $DC    [$00:00DC]   A:04AA X:04C0 Y:2480
C2/733F BF 02 18 E5 LDA $E51802,x[$E5:1CC2] A:04AA X:04C0 Y:2480
C2/7343 A6 D0       LDX $D0    [$00:00D0]   A:8046 X:04C0 Y:2480
C2/7345 9F 13 00 40 STA $400013,x[$40:4053] A:8046 X:4040 Y:2480
C2/7349 A5 DC       LDA $DC    [$00:00DC]   A:8046 X:4040 Y:2480
C2/734B 29 F0 FF    AND #$FFF0              A:04AA X:4040 Y:2480
C2/734E 9F 10 00 40 STA $400010,x[$40:4050] A:04A0 X:4040 Y:2480
C2/7352 A5 DA       LDA $DA    [$00:00DA]   A:04A0 X:4040 Y:2480
C2/7354 0A          ASL A                   A:010C X:4040 Y:2480
C2/7355 18          CLC                     A:0218 X:4040 Y:2480
C2/7356 65 DA       ADC $DA    [$00:00DA]   A:0218 X:4040 Y:2480
C2/7358 AA          TAX                     A:0324 X:4040 Y:2480
C2/7359 BF 00 20 E5 LDA $E52000,x[$E5:2324] A:0324 X:0324 Y:2480
C2/735D 9B          TXY                     A:2E7C X:0324 Y:2480
C2/735E A6 D0       LDX $D0    [$00:00D0]   A:2E7C X:0324 Y:0324
C2/7360 9F 16 00 40 STA $400016,x[$40:4056] A:2E7C X:4040 Y:0324
C2/7364 BB          TYX                     A:2E7C X:4040 Y:0324
C2/7365 BF 02 20 E5 LDA $E52002,x[$E5:2326] A:2E7C X:0324 Y:0324
C2/7369 A6 D0       LDX $D0    [$00:00D0]   A:62F6 X:0324 Y:0324
C2/736B 9F 18 00 40 STA $400018,x[$40:4058] A:62F6 X:4040 Y:0324
C2/736F A5 E4       LDA $E4    [$00:00E4]   A:62F6 X:4040 Y:0324
C2/7371 09 00 FF    ORA #$FF00              A:0000 X:4040 Y:0324
C2/7374 9F 05 00 40 STA $400005,x[$40:4045] A:FF00 X:4040 Y:0324
C2/7378 A9 FF FF    LDA #$FFFF              A:FF00 X:4040 Y:0324
C2/737B 9F 0C 00 40 STA $40000C,x[$40:404C] A:FFFF X:4040 Y:0324
C2/737F A5 D8       LDA $D8    [$00:00D8]   A:FFFF X:4040 Y:0324
C2/7381 EB          XBA                     A:0130 X:4040 Y:0324
C2/7382 29 0E 00    AND #$000E              A:3001 X:4040 Y:0324
C2/7385 AA          TAX                     A:0000 X:4040 Y:0324
C2/7386 BF F0 73 C2 LDA $C273F0,x[$C2:73F0] A:0000 X:0000 Y:0324
C2/738A A6 D0       LDX $D0    [$00:00D0]   A:0000 X:0000 Y:0324
C2/738C E2 20       SEP #$20                A:0000 X:4040 Y:0324
C2/738E 9F 15 00 40 STA $400015,x[$40:4055] A:0000 X:4040 Y:0324
C2/7392 BF 2D 00 40 LDA $40002D,x[$40:406D] A:0000 X:4040 Y:0324
C2/7396 29 BF       AND #$BF                A:0022 X:4040 Y:0324
C2/7398 05 EC       ORA $EC    [$00:00EC]   A:0022 X:4040 Y:0324
C2/739A 9F 2D 00 40 STA $40002D,x[$40:406D] A:0022 X:4040 Y:0324
C2/739E A5 DC       LDA $DC    [$00:00DC]   A:0022 X:4040 Y:0324
C2/73A0 29 0F       AND #$0F                A:00AA X:4040 Y:0324
C2/73A2 18          CLC                     A:000A X:4040 Y:0324
C2/73A3 69 E8       ADC #$E8                A:000A X:4040 Y:0324
C2/73A5 9F 12 00 40 STA $400012,x[$40:4052] A:00F2 X:4040 Y:0324
C2/73A9 C2 20       REP #$20                A:00F2 X:4040 Y:0324
C2/73AB BF 16 00 40 LDA $400016,x[$40:4056] A:00F2 X:4040 Y:0324
C2/73AF 85 DA       STA $DA    [$00:00DA]   A:2E7C X:4040 Y:0324
C2/73B1 BF 18 00 40 LDA $400018,x[$40:4058] A:2E7C X:4040 Y:0324
C2/73B5 85 DC       STA $DC    [$00:00DC]   A:62F6 X:4040 Y:0324
C2/73B7 A0 08 00    LDY #$0008              A:62F6 X:4040 Y:0324
C2/73BA B7 DA       LDA [$DA],y[$F6:2E84]   A:62F6 X:4040 Y:0008
C2/73BC 9F 19 00 40 STA $400019,x[$40:4059] A:0008 X:4040 Y:0008
C2/73C0 60          RTS                     A:0008 X:4040 Y:0008

----------------------------------------------------------------
Loads before battle
C2/70F2 A2 00 00    LDX #$0000              A:7000 X:FC00 Y:0000
C2/70F5 9B          TXY                     A:7000 X:0000 Y:0000
C2/70F6 BF 3D 01 C2 LDA $C2013D,x[$C2:013D] A:7000 X:0000 Y:0000
C2/70FA F0 0C       BEQ $0C    [$7108]      A:4000 X:0000 Y:0000
C2/70FC AA          TAX                     A:4000 X:0000 Y:0000
C2/70FD BF 00 00 40 LDA $400000,x[$40:4000] A:4000 X:4000 Y:0000
C2/7101 F0 06       BEQ $06    [$7109]      A:0000 X:4000 Y:0000
C2/7109 86 D0       STX $D0    [$00:00D0]   A:0000 X:4000 Y:0000
C2/710B A5 E0       LDA $E0    [$00:00E0]   A:0000 X:4000 Y:0000
C2/710D 9F 00 00 40 STA $400000,x[$40:4000] A:2AC1 X:4000 Y:0000
C2/7111 A9 20 00    LDA #$0020              A:2AC1 X:4000 Y:0000
C2/7114 9F 02 00 40 STA $400002,x[$40:4002] A:0020 X:4000 Y:0000
C2/7118 A5 E2       LDA $E2    [$00:00E2]   A:0020 X:4000 Y:0000
C2/711A 9F 03 00 40 STA $400003,x[$40:4003] A:01FC X:4000 Y:0000
C2/711E 0A          ASL A                   A:01FC X:4000 Y:0000
C2/711F 0A          ASL A                   A:03F8 X:4000 Y:0000
C2/7120 AA          TAX                     A:07F0 X:4000 Y:0000
C2/7121 BF 02 00 E5 LDA $E50002,x[$E5:07F2] A:07F0 X:07F0 Y:0000
C2/7125 85 DA       STA $DA    [$00:00DA]   A:005C X:07F0 Y:0000
C2/7127 BF 00 00 E5 LDA $E50000,x[$E5:07F0] A:005C X:07F0 Y:0000
C2/712B 85 D8       STA $D8    [$00:00D8]   A:0108 X:07F0 Y:0000
C2/712D 29 FF 01    AND #$01FF              A:0108 X:07F0 Y:0000
C2/7130 0A          ASL A                   A:0108 X:07F0 Y:0000
C2/7131 0A          ASL A                   A:0210 X:07F0 Y:0000
C2/7132 AA          TAX                     A:0420 X:07F0 Y:0000
C2/7133 BF 00 18 E5 LDA $E51800,x[$E5:1C20] A:0420 X:0420 Y:0000
C2/7137 85 DC       STA $DC    [$00:00DC]   A:9727 X:0420 Y:0000
C2/7139 BF 02 18 E5 LDA $E51802,x[$E5:1C22] A:9727 X:0420 Y:0000
C2/713D A6 D0       LDX $D0    [$00:00D0]   A:759C X:0420 Y:0000
C2/713F 9F 13 00 40 STA $400013,x[$40:4013] A:759C X:4000 Y:0000
C2/7143 A5 DC       LDA $DC    [$00:00DC]   A:759C X:4000 Y:0000
C2/7145 29 F0 FF    AND #$FFF0              A:9727 X:4000 Y:0000
C2/7148 9F 10 00 40 STA $400010,x[$40:4010] A:9720 X:4000 Y:0000
C2/714C A5 DA       LDA $DA    [$00:00DA]   A:9720 X:4000 Y:0000
C2/714E 0A          ASL A                   A:005C X:4000 Y:0000
C2/714F 18          CLC                     A:00B8 X:4000 Y:0000
C2/7150 65 DA       ADC $DA    [$00:00DA]   A:00B8 X:4000 Y:0000
C2/7152 AA          TAX                     A:0114 X:4000 Y:0000
C2/7153 BF 00 20 E5 LDA $E52000,x[$E5:2114] A:0114 X:0114 Y:0000
C2/7157 9B          TXY                     A:C8C2 X:0114 Y:0000
C2/7158 A6 D0       LDX $D0    [$00:00D0]   A:C8C2 X:0114 Y:0114
C2/715A 9F 16 00 40 STA $400016,x[$40:4016] A:C8C2 X:4000 Y:0114
C2/715E BB          TYX                     A:C8C2 X:4000 Y:0114
C2/715F BF 02 20 E5 LDA $E52002,x[$E5:2116] A:C8C2 X:0114 Y:0114
C2/7163 A6 D0       LDX $D0    [$00:00D0]   A:62E6 X:0114 Y:0114
C2/7165 9F 18 00 40 STA $400018,x[$40:4018] A:62E6 X:4000 Y:0114
C2/7169 A5 E4       LDA $E4    [$00:00E4]   A:62E6 X:4000 Y:0114
C2/716B 09 00 FF    ORA #$FF00              A:0000 X:4000 Y:0114
C2/716E 9F 05 00 40 STA $400005,x[$40:4005] A:FF00 X:4000 Y:0114
C2/7172 A9 FE FF    LDA #$FFFE              A:FF00 X:4000 Y:0114
C2/7175 9F 0C 00 40 STA $40000C,x[$40:400C] A:FFFE X:4000 Y:0114
C2/7179 A5 E6       LDA $E6    [$00:00E6]   A:FFFE X:4000 Y:0114
C2/717B 9F 30 00 40 STA $400030,x[$40:4030] A:00A7 X:4000 Y:0114
C2/717F A5 E8       LDA $E8    [$00:00E8]   A:00A7 X:4000 Y:0114
C2/7181 9F 32 00 40 STA $400032,x[$40:4032] A:0087 X:4000 Y:0114
C2/7185 A5 EA       LDA $EA    [$00:00EA]   A:0087 X:4000 Y:0114
C2/7187 9F 34 00 40 STA $400034,x[$40:4034] A:FFE0 X:4000 Y:0114
C2/718B A5 D8       LDA $D8    [$00:00D8]   A:FFE0 X:4000 Y:0114
C2/718D EB          XBA                     A:0108 X:4000 Y:0114
C2/718E 29 0E 00    AND #$000E              A:0801 X:4000 Y:0114
C2/7191 AA          TAX                     A:0000 X:4000 Y:0114
C2/7192 BF F0 73 C2 LDA $C273F0,x[$C2:73F0] A:0000 X:0000 Y:0114 ;palettes
C2/7196 A6 D0       LDX $D0    [$00:00D0]   A:0000 X:0000 Y:0114
C2/7198 E2 20       SEP #$20                A:0000 X:4000 Y:0114
C2/719A 9F 15 00 40 STA $400015,x[$40:4015] A:0000 X:4000 Y:0114
C2/719E A5 EC       LDA $EC    [$00:00EC]   A:0000 X:4000 Y:0114
C2/71A0 9F 2D 00 40 STA $40002D,x[$40:402D] A:002A X:4000 Y:0114
C2/71A4 A5 DC       LDA $DC    [$00:00DC]   A:002A X:4000 Y:0114
C2/71A6 29 0F       AND #$0F                A:0027 X:4000 Y:0114
C2/71A8 18          CLC                     A:0007 X:4000 Y:0114
C2/71A9 69 E8       ADC #$E8                A:0007 X:4000 Y:0114
C2/71AB 9F 12 00 40 STA $400012,x[$40:4012] A:00EF X:4000 Y:0114
C2/71AF C2 20       REP #$20                A:00EF X:4000 Y:0114
C2/71B1 A5 EE       LDA $EE    [$00:00EE]   A:00EF X:4000 Y:0114
C2/71B3 9F 2E 00 40 STA $40002E,x[$40:402E] A:7000 X:4000 Y:0114
C2/71B7 BF 16 00 40 LDA $400016,x[$40:4016] A:7000 X:4000 Y:0114
C2/71BB 85 DA       STA $DA    [$00:00DA]   A:C8C2 X:4000 Y:0114
C2/71BD BF 18 00 40 LDA $400018,x[$40:4018] A:C8C2 X:4000 Y:0114
C2/71C1 85 DC       STA $DC    [$00:00DC]   A:62E6 X:4000 Y:0114
C2/71C3 A0 08 00    LDY #$0008              A:62E6 X:4000 Y:0114
C2/71C6 B7 DA       LDA [$DA],y[$E6:C8CA]   A:62E6 X:4000 Y:0008
C2/71C8 9F 19 00 40 STA $400019,x[$40:4019] A:0020 X:4000 Y:0008
C2/71CC A9 00 00    LDA #$0000              A:0020 X:4000 Y:0008
C2/71CF 9F 24 00 40 STA $400024,x[$40:4024] A:0000 X:4000 Y:0008
C2/71D3 A5 E0       LDA $E0    [$00:00E0]   A:0000 X:4000 Y:0008
C2/71D5 89 40 00    BIT #$0040              A:2AC1 X:4000 Y:0008
C2/71D8 D0 1D       BNE $1D    [$71F7]      A:2AC1 X:4000 Y:0008
C2/71F7 A2 00 00    LDX #$0000              A:2AC1 X:4000 Y:0008
C2/71FA BF 80 3C 40 LDA $403C80,x[$40:3C80] A:2AC1 X:0000 Y:0008
C2/71FE F0 04       BEQ $04    [$7204]      A:0000 X:0000 Y:0008
C2/7204 A5 D0       LDA $D0    [$00:00D0]   A:0000 X:0000 Y:0008
C2/7206 9F 80 3C 40 STA $403C80,x[$40:3C80] A:4000 X:0000 Y:0008
C2/720A A9 00 00    LDA #$0000              A:4000 X:0000 Y:0008
C2/720D 9F 82 3C 40 STA $403C82,x[$40:3C82] A:0000 X:0000 Y:0008
C2/7211 A6 D0       LDX $D0    [$00:00D0]   A:0000 X:0000 Y:0008
C2/7213 60          RTS                     A:0000 X:4000 Y:0008

----------------------------------------------------------------
Load Battle Palette for Characters (SA-1)

C2/8885 BF 01 00 40 LDA $400001,x[$40:4081] A:6000 X:4080 Y:001C 
C2/8889 89 20 00    BIT #$0020              A:8132 X:4080 Y:001C 
C2/888C D0 01       BNE $01    [$888F]      A:8132 X:4080 Y:001C 
	60
C2/888F 86 CE       STX $CE    [$00:00CE]   A:8132 X:4080 Y:001C 
C2/8891 29 DF FF    AND #$FFDF              A:8132 X:4080 Y:001C 
C2/8894 9F 01 00 40 STA $400001,x[$40:4081] A:8112 X:4080 Y:001C 
C2/8898 89 02 00    BIT #$0002              A:8112 X:4080 Y:001C 
C2/889B D0 2F       BNE $2F    [$88CC]      A:8112 X:4080 Y:001C 

Load palette for monsters (SA-1)

C2/889D BF 2D 00 40 LDA $40002D,x[$40:402D] A:8108 X:4000 Y:000C 
C2/88A1 29 0E 00    AND #$000E              A:0020 X:4000 Y:000C 
C2/88A4 AA          TAX                     A:0000 X:4000 Y:000C 
C2/88A5 BF 1B 8B C2 LDA $C28B1B,x[$C2:8B1B] A:0000 X:0000 Y:000C 
C2/88A9 AA          TAX                     A:3200 X:0000 Y:000C 
C2/88AA A9 01 00    LDA #$0001              A:3200 X:3200 Y:000C 
C2/88AD 95 00       STA $00,x  [$00:3200]   A:0001 X:3200 Y:000C 
C2/88AF E8          INX                     A:0001 X:3200 Y:000C 
C2/88B0 E8          INX                     A:0001 X:3201 Y:000C 
C2/88B1 9B          TXY                     A:0001 X:3202 Y:000C 
C2/88B2 A6 CE       LDX $CE    [$00:00CE]   A:0001 X:3202 Y:3202 
C2/88B4 BF 15 00 40 LDA $400015,x[$40:4015] A:0001 X:4000 Y:3202 
C2/88B8 29 FF 00    AND #$00FF              A:E800 X:4000 Y:3202 
C2/88BB 18          CLC                     A:0000 X:4000 Y:3202 
C2/88BC 7F 13 00 40 ADC $400013,x[$40:4013] A:0000 X:4000 Y:3202 
C2/88C0 AA          TAX                     A:332A X:4000 Y:3202 
C2/88C1 A9 1D 00    LDA #$001D              A:332A X:332A Y:3202 
C2/88C4 8B          PHB                     A:001D X:332A Y:3202 
C2/88C5 54          MVN 00 E5               A:001D X:332A Y:3202 ;copy monster palette to ram

C2/88C8 AB          PLB                     A:FFFF X:3348 Y:3220 
C2/88C9 A6 CE       LDX $CE    [$00:00CE]   A:FFFF X:3348 Y:3220 
C2/88CB 60          RTS                     A:FFFF X:4000 Y:3220 

C2/88CC BF 03 00 40 LDA $400003,x[$40:4083] A:8112 X:4080 Y:001C 
C2/88D0 C9 00 01    CMP #$0100              A:0008 X:4080 Y:001C 
C2/88D3 10 09       BPL $09    [$88DE]      A:0008 X:4080 Y:001C 
C2/88D5 BF 15 00 40 LDA $400015,x[$40:4095] A:0008 X:4080 Y:001C ;underwater byte
C2/88D9 29 FF 00    AND #$00FF              A:0000 X:4080 Y:001C ;isolate byte
C2/88DC D0 05       BNE $05    [$88E3]      A:0000 X:4080 Y:001C ;branch if not at 0
C2/88DE A9 78 00    LDA #$0078              A:0000 X:4080 Y:001C ;underwater palette pointer
C2/88E1 80 07       BRA $07    [$88EA]      A:0078 X:4080 Y:001C 

C2/88EA 85 C0       STA $C0    [$00:00C0]   A:0078 X:4080 Y:001C 
C2/88EC BF 2D 00 40 LDA $40002D,x[$40:40AD] A:0078 X:4080 Y:001C 
C2/88F0 29 0E 00    AND #$000E              A:0024 X:4080 Y:001C 
C2/88F3 AA          TAX                     A:0004 X:4080 Y:001C 
C2/88F4 BF 1B 8B C2 LDA $C28B1B,x[$C2:8B1F] A:0004 X:0004 Y:001C 
C2/88F8 AA          TAX                     A:3240 X:0004 Y:001C 
C2/88F9 A9 01 00    LDA #$0001              A:3240 X:3240 Y:001C 
C2/88FC 95 00       STA $00,x  [$00:3240]   A:0001 X:3240 Y:001C 
C2/88FE E8          INX                     A:0001 X:3240 Y:001C 
C2/88FF E8          INX                     A:0001 X:3241 Y:001C 
C2/8900 9B          TXY                     A:0001 X:3242 Y:001C 
C2/8901 A6 CE       LDX $CE    [$00:00CE]   A:0001 X:3242 Y:3242 
C2/8903 A5 C0       LDA $C0    [$00:00C0]   A:0001 X:4080 Y:3242 
C2/8905 18          CLC                     A:0078 X:4080 Y:3242 
C2/8906 7F 13 00 40 ADC $400013,x[$40:4093] A:0078 X:4080 Y:3242 
C2/890A AA          TAX                     A:7D1C X:4080 Y:3242 
C2/890B A9 1D 00    LDA #$001D              A:7D1C X:7D1C Y:3242 
C2/890E 8B          PHB                     A:001D X:7D1C Y:3242 
C2/890F 54          MVN 00 E5               A:001D X:7D1C Y:3242 ;copy palette

===========================================================================
processor
C2/8E23 A9 00 80    LDA #$8000              A:0000 X:0000 Y:2480
C2/8E26 1C 66 0B    TRB $0B66  [$00:0B66]   A:8000 X:0000 Y:2480
C2/8E29 20 EB 0B    JSR $0BEB  [$C2:0BEB]   A:8000 X:0000 Y:2480	;also applies ailments

C2/8E2C AD 00 07    LDA $0700  [$00:0700]   A:8000 X:0060 Y:2480
C2/8E2F 89 01 00    BIT #$0001              A:E000 X:0060 Y:2480
C2/8E32 D0 4C       BNE $4C    [$8E80]      A:E000 X:0060 Y:2480
C2/8E34 9C 60 30    STZ $3060  [$00:3060]   A:E000 X:0060 Y:2480
C2/8E37 AD 66 0B    LDA $0B66  [$00:0B66]   A:E000 X:0060 Y:2480
C2/8E3A 30 30       BMI $30    [$8E6C]      A:0001 X:0060 Y:2480
C2/8E3C A9 00 20    LDA #$2000              A:0001 X:0060 Y:2480
C2/8E3F 0C 06 07    TSB $0706  [$00:0706]   A:2000 X:0060 Y:2480
C2/8E42 22 06 00 C1 JSL $C10006[$C1:0006]   A:2000 X:0060 Y:2480

C2/8E46 A9 00 20    LDA #$2000              A:1FE3 X:0000 Y:2480
C2/8E49 1C 06 07    TRB $0706  [$00:0706]   A:2000 X:0000 Y:2480
C2/8E4C AD 82 0B    LDA $0B82  [$00:0B82]   A:2000 X:0000 Y:2480
C2/8E4F D0 2F       BNE $2F    [$8E80]      A:0000 X:0000 Y:2480
C2/8E51 A9 5B 8F    LDA #$8F5B              A:0000 X:0000 Y:2480
C2/8E54 8D 6E 30    STA $306E  [$00:306E]   A:8F5B X:0000 Y:2480
C2/8E57 9C 60 30    STZ $3060  [$00:3060]   A:8F5B X:0000 Y:2480
C2/8E5A A9 01 00    LDA #$0001              A:8F5B X:0000 Y:2480
C2/8E5D 0C 00 30    TSB $3000  [$00:3000]   A:0001 X:0000 Y:2480
C2/8E60 22 00 08 00 JSL $000800[$00:0800]   A:0001 X:0000 Y:2480

C2/8E64 20 FA 02    JSR $02FA  [$C2:02FA]   A:0001 X:0000 Y:2480
C2/8E67 20 E1 8E    JSR $8EE1  [$C2:8EE1]   A:0000 X:0000 Y:2480
C2/8E6A D0 14       BNE $14    [$8E80]      A:0000 X:0000 Y:2480
C2/8E6C AD 00 07    LDA $0700  [$00:0700]   A:0000 X:0000 Y:2480
C2/8E6F 89 00 80    BIT #$8000              A:E000 X:0000 Y:2480
C2/8E72 F0 06       BEQ $06    [$8E7A]      A:E000 X:0000 Y:2480
C2/8E74 20 E0 02    JSR $02E0  [$C2:02E0]   A:E000 X:0000 Y:2480
C2/8E77 4C 23 8E    JMP $8E23  [$C2:8E23]   A:0000 X:0000 Y:2480
===========================================================================
C2/8EE1 AD 00 07    LDA $0700  [$00:0700]   A:0000 X:0000 Y:2680 
C2/8EE4 89 20 00    BIT #$0020              A:F000 X:0000 Y:2680 
C2/8EE7 F0 0D       BEQ $0D    [$8EF6]      A:F000 X:0000 Y:2680 
C2/8EF6 AD AC FF    LDA $FFAC  [$00:FFAC]   A:F000 X:0000 Y:2680 ;load quick exit locks
C2/8EF9 D0 34       BNE $34    [$8F2F]      A:0000 X:0000 Y:2680 
C2/8EFB AD AE FF    LDA $FFAE  [$00:FFAE]   A:0000 X:0000 Y:2680 
C2/8EFE D0 2F       BNE $2F    [$8F2F]      A:0000 X:0000 Y:2680 ;branch if locks set

C2/8F00 AD 14 30    LDA $3014  [$00:3014]   A:0000 X:0000 Y:2680 ;load joypad register
C2/8F03 89 00 20    BIT #$2000              A:0000 X:0000 Y:2680 ;check Select button bit
C2/8F06 F0 27       BEQ $27    [$8F2F]      A:0000 X:0000 Y:2680 ;branch if not set
C2/8F08 AD 10 30    LDA $3010  [$00:3010]   A:2000 X:2000 Y:2680 ;load other joypad register(s)
C2/8F0B 89 30 00    BIT #$0030              A:2000 X:2000 Y:2680 ;check L and/or R button bit(s)
C2/8F0E F0 0A       BEQ $0A    [$8F1A]      A:2000 X:2000 Y:2680 ;branch if neither set

===========================================================================
Load formation pack monster bytes -- EG: Formation Pack 2 - Spikey, Spikey

C2/9092 9C 00 07    STZ $0700  [$00:0700]   A:0D00 X:0200 Y:0402 
C2/9095 9C 64 0B    STZ $0B64  [$00:0B64]   A:0D00 X:0200 Y:0402 
C2/9098 A5 4B       LDA $4B    [$00:004B]   A:0D00 X:0200 Y:0402 
C2/909A 29 FF 00    AND #$00FF              A:0909 X:0200 Y:0402 
C2/909D 85 4B       STA $4B    [$00:004B]   A:0009 X:0200 Y:0402 
C2/909F EB          XBA                     A:0009 X:0200 Y:0402 
C2/90A0 05 4B       ORA $4B    [$00:004B]   A:0900 X:0200 Y:0402 
C2/90A2 85 4B       STA $4B    [$00:004B]   A:0909 X:0200 Y:0402 
C2/90A4 A5 43       LDA $43    [$00:0043]   A:0909 X:0200 Y:0402 
C2/90A6 29 00 FF    AND #$FF00              A:6400 X:0200 Y:0402 
C2/90A9 85 43       STA $43    [$00:0043]   A:6400 X:0200 Y:0402 
C2/90AB A5 42       LDA $42    [$00:0042]   A:6400 X:0200 Y:0402 
C2/90AD 89 01 00    BIT #$0001              A:0000 X:0200 Y:0402 
C2/90B0 F0 06       BEQ $06    [$90B8]      A:0000 X:0200 Y:0402 
C2/90B8 A5 48       LDA $48    [$00:0048]   A:0000 X:0200 Y:0402 ;load formation pack byte
C2/90BA C9 FF FF    CMP #$FFFF              A:0002 X:0200 Y:0402 ;is it a formation pack?
C2/90BD D0 0B       BNE $0B    [$90CA]      A:0002 X:0200 Y:0402 ;branch if it is

C2/90CA AF 0A 00 F9 LDA $F9000A[$F9:000A]   A:0002 X:0200 Y:0402 ;load formation pack data block ptr
C2/90CE 85 B8       STA $B8    [$00:00B8]   A:222A X:0200 Y:0402 ;store to register
C2/90D0 A9 F9 00    LDA #$00F9              A:222A X:0200 Y:0402 
C2/90D3 85 BA       STA $BA    [$00:00BA]   A:00F9 X:0200 Y:0402 
C2/90D5 A5 48       LDA $48    [$00:0048]   A:00F9 X:0200 Y:0402 ;load formation pack byte
C2/90D7 29 FF 01    AND #$01FF              A:0002 X:0200 Y:0402 ;isolate bits 0-4 (for 9-bit formation byte)
C2/90DA 0A          ASL A                   A:0002 X:0200 Y:0402 ;x4
C2/90DB 0A          ASL A                   A:0004 X:0200 Y:0402 
C2/90DC A8          TAY                     A:0008 X:0200 Y:0402 ;transfer to Y for indirect read
C2/90DD B7 B8       LDA [$B8],y[$F9:2232]   A:0008 X:0200 Y:0008 ;load formation 1,2 from data counter
C2/90DF 85 B0       STA $B0    [$00:00B0]   A:0504 X:0200 Y:0008 ;store to register
C2/90E1 C8          INY                     A:0504 X:0200 Y:0008 ;increment data counter twice
C2/90E2 C8          INY                     A:0504 X:0200 Y:0009 
C2/90E3 B7 B8       LDA [$B8],y[$F9:2234]   A:0504 X:0200 Y:000A ;load formation 3, 9-bit flag
C2/90E5 85 B2       STA $B2    [$00:00B2]   A:0005 X:0200 Y:000A ;store to register
C2/90E7 A5 4A       LDA $4A    [$00:004A]   A:0005 X:0200 Y:000A ;??? indirect ptr for formation byte storage
C2/90E9 29 FF 00    AND #$00FF              A:0900 X:0200 Y:000A ;isolate indirect ptr byte
C2/90EC 0A          ASL A                   A:0000 X:0200 Y:000A ;double for ptr read
C2/90ED AA          TAX                     A:0000 X:0200 Y:000A ;transfer to X to JMP indirect address
C2/90EE 7C F1 90    JMP ($90F1,x)[$C2:90F7] A:0000 X:0000 Y:000A ;jump to byte storage function

...From 90EE: JMP ($90F1,x)...
	F7 90 ;Formation 1
	08 91 ;Formation 2
	1A 91 ;Formation 3

Formation 1
C2/90F7 A5 B0       LDA $B0    [$00:00B0]   A:0000 X:0000 Y:000A ;load formation 1
C2/90F9 29 FF 00    AND #$00FF              A:0504 X:0000 Y:000A ;isolate formation 1 byte
C2/90FC 85 B4       STA $B4    [$00:00B4]   A:0004 X:0000 Y:000A ;store to register
C2/90FE A5 B3       LDA $B3    [$00:00B3]   A:0004 X:0000 Y:000A ;load 9-bit flag (flag not set this time)
C2/9100 29 01 00    AND #$0001              A:0400 X:0000 Y:000A ;isolate 9-bit formation byte flag
C2/9103 EB          XBA                     A:0000 X:0000 Y:000A ;flip bytes for little endian read
C2/9104 05 B4       ORA $B4    [$00:00B4]   A:0000 X:0000 Y:000A ;set current formation bits
C2/9106 80 23       BRA $23    [$912B]      A:0004 X:0000 Y:000A ;always branch



C2/912B 8F 0E FA 7E STA $7EFA0E[$7E:FA0E]   A:0004 X:0000 Y:000A ;store as current formation
C2/912F 60          RTS                     A:0004 X:0000 Y:000A ;end

================================================================
Load Battle RAM stuff

...From C2/8DC4: JSR...
C2/9130 A2 0E 00	;do this 7 times
	BF BD F8 7F	;stored Jump power increment counter
	9F 10 E0 7E	;save to Battle RAM
	CA		;subtract 1
	CA		;subtract 1
	10 F4		;loop
	AF 0E FA 7E
	0A
	18
	6F 0E FA 7E
	A8
C2/914A AF 0E 00 F9	;load Formation Pack Stats (Special Byte, Executed Battle Event, "Can't Run", Music)
	85 EA
	A9 F9 00
	85 EC
	B7 EA
C2/9157 8F 1C FA 7E	;save special byte to memory 7E:FA1C (only Bowser fight uses this)
	C8
	C8
	B7 EA
	29 FF 00
C2/9162 8F 1E FA 7E	;save to byte that sets "Can't Run" bit and Music
C2/9166 AF 1C FA 7E	;load special byte (only Bowser fight uses this)
	4A		
	4A		
	29 0E 00	;isolate
	AA
	BF 2D 01 C2	;load monster RAM addresses
	8D 4E 07
	AF 1D FA 7E	;load executed battle event at the beginning of battle
	29 FF 00
	C9 FF 00
	F0 1A
	85 E2
	A9 40 00
	85 E0
	A9 00 00
	85 E4
	AF 00 60 FA	;Battle Event pointer block pointer
	85 EA
	A9 FA 00
	85 EC
	20 02 07	;??? JSR
	A5 4B
	29 FF 00
	A8
C2/91A3	AF 1C 00 F9	; ??? table for something used here
C2/91A7 85 EA       STA $EA    [$00:00EA]   A:0190 X:0000 Y:0000  
C2/91A9 A9 F9 00    LDA #$00F9              A:0190 X:0000 Y:0000  
C2/91AC 85 EC       STA $EC    [$00:00EC]   A:00F9 X:0000 Y:0000  
C2/91AE B7 EA       LDA [$EA],y[$F9:0190]   A:00F9 X:0000 Y:0000  
C2/91B0 29 FF 00    AND #$00FF              A:0000 X:0000 Y:0000  
C2/91B3 C9 FF 00    CMP #$00FF              A:0000 X:0000 Y:0000  
C2/91B6 F0 1B       BEQ $1B    [$91D3]      A:0000 X:0000 Y:0000  
C2/91B8 0A          ASL A                   A:0000 X:0000 Y:0000  
C2/91B9 85 E4       STA $E4    [$00:00E4]   A:0000 X:0000 Y:0000  
C2/91BB A9 40 00    LDA #$0040              A:0000 X:0000 Y:0000  
C2/91BE 85 E0       STA $E0    [$00:00E0]   A:0040 X:0000 Y:0000  
C2/91C0 A9 00 00    LDA #$0000              A:0040 X:0000 Y:0000  
C2/91C3 85 E2       STA $E2    [$00:00E2]   A:0000 X:0000 Y:0000  
C2/91C5 AF 02 60 FA LDA $FA6002[$FA:6002]   A:0000 X:0000 Y:0000 ;Battle event pointer
C2/91C9 85 EA       STA $EA    [$00:00EA]   A:ECF7 X:0000 Y:0000 

...Continues
C2/91ED A9 00 00
	8F 00 FA 7E	;set ??? to zero
	8F 02 FA 7E	;total XP gained from battle
	8F 04 FA 7E	;total coins gained from battle
	8F 06 FA 7E	;won item
	8F 00 3D 40
	AF B1 F8 7F	;load Overworld FP
	8F 0C FA 7E	;save to Battle FP
	A9 80 00
	85 E0
	A9 08 00
	85 E2
	A9 00 00
	85 E4
	AF 30 A0 C2
	85 EA
	A9 C2 00
	85 EC
	20 02 07
	AD 7C 0B
	89 01 00
	F0 01
	60
C2/8DD2 20 40 6F	;load GFX for battle menus
================================================================
C2/9235 AD 7C 0B    LDA $0B7C  [$00:0B7C]   A:0001 X:004E Y:0008
C2/9238 89 02 00    BIT #$0002              A:0000 X:004E Y:0008
C2/923B D0 2F       BNE $2F    [$926C]      A:0000 X:004E Y:0008
C2/923D AD 64 0B    LDA $0B64  [$00:0B64]   A:0000 X:004E Y:0008
C2/9240 F0 0F       BEQ $0F    [$9251]      A:0000 X:004E Y:0008
C2/9251 20 00 96    JSR $9600  [$C2:9600]   A:0000 X:004E Y:0008
C2/9254 AD 64 0B    LDA $0B64  [$00:0B64]   A:FFFF X:0002 Y:0008
C2/9257 F0 0C       BEQ $0C    [$9265]      A:0000 X:0002 Y:0008
C2/9265 22 00 A0 C2 JSL $C2A000[$C2:A000]   A:0000 X:0002 Y:0008 ;loader
C2/9269 20 B2 98    JSR $98B2  [$C2:98B2]   A:0000 X:0002 Y:0008 ;Speed Calculation (Turn order)
	60

================================================================
End of battle
C2/926D A2 0E 00    LDX #$000E              A:0000 X:2000 Y:2000 
C2/9270 BF 10 E0 7E LDA $7EE010,x[$7E:E01E] A:0000 X:000E Y:2000 ;load Jump power increment counter
C2/9274 9F BD F8 7F STA $7FF8BD,x[$7F:F8CB] A:0000 X:000E Y:2000 ;store Jump power
C2/9278 CA          DEX                     A:0000 X:000E Y:2000 
C2/9279 CA          DEX                     A:0000 X:000D Y:2000 
C2/927A 10 F4       BPL $F4    [$9270]      A:0000 X:000C Y:2000 ;move to next

C2/927C E2 20       SEP #$20                A:0008 X:FFFE Y:2000 
C2/927E AF 0C FA 7E LDA $7EFA0C[$7E:FA0C]   A:0008 X:FFFE Y:2000 ;load current battle FP
C2/9282 8F B1 F8 7F STA $7FF8B1[$7F:F8B1]   A:0063 X:FFFE Y:2000 ;store as current FP
C2/9286 C2 20       REP #$20                A:0063 X:FFFE Y:2000 
C2/9288 A2 00 00    LDX #$0000              A:0063 X:FFFE Y:2000 
C2/928B 86 B0       STX $B0    [$00:00B0]   A:0063 X:0000 Y:2000 
C2/928D BF 27 01 C2 LDA $C20127,x[$C2:0127] A:0063 X:0000 Y:2000 
C2/9291 AA          TAX                     A:FA80 X:0000 Y:2000 
C2/9292 86 B2       STX $B2    [$00:00B2]   A:FA80 X:FA80 Y:2000 
C2/9294 BF 00 00 7E LDA $7E0000,x[$7E:FA80] A:FA80 X:FA80 Y:2000 ;load mortal status
C2/9298 29 C0 00    AND #$00C0              A:0300 X:FA80 Y:2000 ;isolate mortal bits
C2/929B C9 80 00    CMP #$0080              A:0000 X:FA80 Y:2000 ;check if slot is occupied
C2/929E F0 2F       BEQ $2F    [$92CF]      A:0000 X:FA80 Y:2000 ;branch if not
C2/92A0 C9 C0 00    CMP #$00C0              A:0000 X:FA80 Y:2000 ;check if dead
C2/92A3 D0 07       BNE $07    [$92AC]      A:0000 X:FA80 Y:2000 ;branch if not

C2/92A5 A9 01 00    LDA #$0001              A:0000 X:FA80 Y:2000 
C2/92A8 9F 11 00 7E STA $7E0011,x[$7E:FA91] A:0000 X:FA80 Y:2000 ;set current HP to 1

C2/92AC BF 01 00 7E LDA $7E0001,x[$7E:FA81] A:0000 X:FA80 Y:2000 ;load character ID in slot 1
C2/92B0 29 FF 00    AND #$00FF              A:5503 X:FA80 Y:2000 
C2/92B3 AA          TAX                     A:0003 X:FA80 Y:2000 
C2/92B4 BF 4C 97 C2 LDA $C2974C,x[$C2:974F] A:0003 X:0003 Y:2000 
C2/92B8 29 FF 00    AND #$00FF              A:503C X:0003 Y:2000 
C2/92BB 18          CLC                     A:003C X:0003 Y:2000 
C2/92BC 69 00 F8    ADC #$F800              A:003C X:0003 Y:2000 
C2/92BF A8          TAY                     A:F83C X:0003 Y:2000 
C2/92C0 A5 B2       LDA $B2    [$00:00B2]   A:F83C X:0003 Y:F83C 
C2/92C2 18          CLC                     A:FA80 X:0003 Y:F83C 
C2/92C3 69 10 00    ADC #$0010              A:FA80 X:0003 Y:F83C 
C2/92C6 AA          TAX                     A:FA90 X:0003 Y:F83C 
C2/92C7 A9 13 00    LDA #$0013              A:FA90 X:FA90 Y:F83C 
C2/92CA 8B          PHB                     A:0013 X:FA90 Y:F83C 
C2/92CB 54 7F 7E    MVN 7F 7E               A:0013 X:FA90 Y:F83C ;copy battle stats to overworld stats
C2/92CB 54 7F 7E    MVN 7F 7E               A:0012 X:FA91 Y:F83D ;...
C2/92CB 54 7F 7E    MVN 7F 7E               A:0011 X:FA92 Y:F83E 
C2/92CB 54 7F 7E    MVN 7F 7E               A:0010 X:FA93 Y:F83F 
C2/92CB 54 7F 7E    MVN 7F 7E               A:000F X:FA94 Y:F840 
C2/92CB 54 7F 7E    MVN 7F 7E               A:000E X:FA95 Y:F841 
C2/92CB 54 7F 7E    MVN 7F 7E               A:000D X:FA96 Y:F842 
C2/92CB 54 7F 7E    MVN 7F 7E               A:000C X:FA97 Y:F843 
C2/92CB 54 7F 7E    MVN 7F 7E               A:000B X:FA98 Y:F844 
C2/92CB 54 7F 7E    MVN 7F 7E               A:000A X:FA99 Y:F845 
C2/92CB 54 7F 7E    MVN 7F 7E               A:0009 X:FA9A Y:F846 
C2/92CB 54 7F 7E    MVN 7F 7E               A:0008 X:FA9B Y:F847 
C2/92CB 54 7F 7E    MVN 7F 7E               A:0007 X:FA9C Y:F848 
C2/92CB 54 7F 7E    MVN 7F 7E               A:0006 X:FA9D Y:F849 
C2/92CB 54 7F 7E    MVN 7F 7E               A:0005 X:FA9E Y:F84A 
C2/92CB 54 7F 7E    MVN 7F 7E               A:0004 X:FA9F Y:F84B 
C2/92CB 54 7F 7E    MVN 7F 7E               A:0003 X:FAA0 Y:F84C 
C2/92CB 54 7F 7E    MVN 7F 7E               A:0002 X:FAA1 Y:F84D 
C2/92CB 54 7F 7E    MVN 7F 7E               A:0001 X:FAA2 Y:F84E 
C2/92CB 54 7F 7E    MVN 7F 7E               A:0000 X:FAA3 Y:F84F ;...
C2/92CE AB          PLB                     A:FFFF X:FAA4 Y:F850 ;pull DB

C2/92CF A6 B0       LDX $B0    [$00:00B0]   A:FFFF X:FBA4 Y:F814 
C2/92D1 E8          INX                     A:FFFF X:0004 Y:F814 
C2/92D2 E8          INX                     A:FFFF X:0005 Y:F814 
C2/92D3 E0 05 00    CPX #$0005              A:FFFF X:0006 Y:F814 
C2/92D6 30 B3       BMI $B3    [$928B]      A:FFFF X:0006 Y:F814 
C2/92D8 64 B0       STZ $B0    [$00:00B0]   A:FFFF X:0006 Y:F814 
C2/92DA A2 00 00    LDX #$0000              A:FFFF X:0006 Y:F814 

C2/92DD 9B          TXY                     A:00FF X:0004 Y:0002 
C2/92DE BF 27 01 C2 LDA $C20127,x[$C2:012B] A:00FF X:0004 Y:0004 ;load character slot
C2/92E2 AA          TAX                     A:FB80 X:0004 Y:0004 
C2/92E3 BF 00 00 7E LDA $7E0000,x[$7E:FB80] A:FB80 X:FB80 Y:0004 ;load mortal status
C2/92E7 29 C0 00    AND #$00C0              A:0000 X:FB80 Y:0004 
C2/92EA D0 0E       BNE $0E    [$92FA]      A:0000 X:FB80 Y:0004 ;branch if dead
C2/92EC BF 1E 00 7E LDA $7E001E,x[$7E:FB9E] A:0000 X:FB80 Y:0004 ;load accessory
C2/92F0 29 FF 00    AND #$00FF              A:00FF X:FB80 Y:0004 
C2/92F3 C9 58 00    CMP #$0058              A:00FF X:FB80 Y:0004 ;check if Coin Trick equipped
C2/92F6 D0 02       BNE $02    [$92FA]      A:00FF X:FB80 Y:0004 ;branch if not
C2/92F8 E6 B0       INC $B0                 A:00FF X:FB00 Y:0004 ;set double flag
C2/92FA BB          TYX                     A:00FF X:FB80 Y:0004 
C2/92FB E8          INX                     A:00FF X:0004 Y:0004 
C2/92FC E8          INX                     A:00FF X:0005 Y:0004 
C2/92FD E0 05 00    CPX #$0005              A:00FF X:0006 Y:0004 
C2/9300 30 DB       BMI $DB    [$92DD]      A:00FF X:0006 Y:0004 
C2/9302 A5 B0       LDA $B0    [$00:00B0]   A:00FF X:0006 Y:0004 ;load double flag
C2/9304 F0 09       BEQ $09    [$930F]      A:0000 X:0006 Y:0004 ;branch if not set

C2/9306 AF 04 FA 7E LDA $7EFA04 [$7E:FA04]  A:0000 X:0006 Y:0004 ;load coins won
C2/930A 0A          ASL A                   A:0000 X:0006 Y:0004 ;double
C2/930B 8F 04 FA 7E STA $7EFA04 [$7E:FA04]  A:0000 X:0006 Y:0004 ;store as coins won

C2/930F AF AF F8 7F LDA $7FF8AF[$7F:F8AF]   A:0000 X:0006 Y:0004 ;load current coins
C2/9313 18          CLC                     A:03E7 X:0006 Y:0004 
C2/9314 6F 04 FA 7E ADC $7EFA04[$7E:FA04]   A:03E7 X:0006 Y:0004 ;add to coins won
C2/9318 C9 E7 03    CMP #$03E7              A:03E8 X:0006 Y:0004 ;check if overflow
C2/931B 30 03       BMI $03    [$9320]      A:03E8 X:0006 Y:0004 ;branch if less than 999
C2/931D A9 E7 03    LDA #$03E7              A:03E8 X:0006 Y:0004 ;truncate coins to 999
C2/9320 8F AF F8 7F STA $7FF8AF[$7F:F8AF]   A:03E7 X:0006 Y:0004 ;store as current coins
C2/9324 60          RTS                     A:03E7 X:0006 Y:0004
=================================================================
load Formation data
DISASSEMBLER NOTE: 
	There are up to 8 possible monsters on the field at once.
	So, here the monsters are assigned to one of 8 bits.
	C2/935E sets the counter to 80, then does an LSR each time a monster has been accounted for.
	The byte for "Is Monster Used?" status is checked first, then "Is Monster hidden?" is checked second.

C2/9325 ;start
...
... clears monster mortal status + ID #
...
C2/935E A9 80							 ;set bit-7 (up to 8 possible monsters on field at once)
	85 B5
	A6 B2
C2/9364 BF 00 C0 F9 LDA $F9C000,x[$F9:C000] A:0080 X:0000 Y:000E ;load Formations data (26 bytes)
C2/9368 85 B6       STA $B6    [$00:00B6]   A:0080 X:0000 Y:000E ;save to byte to see "Is Monster Used?" in battle
C2/936A BF 01 C0 F9 LDA $F9C001,x[$F9:C001] A:0080 X:0000 Y:000E ;load byte 2
C2/936E 85 B7       STA $B7    [$00:00B7]   A:0000 X:0000 Y:000E ;save to byte to check "Is Monster hidden?"
C2/9370 A9 08       LDA #$08                A:0000 X:0000 Y:000E ;pull address over 4 times
C2/9372 85 BC       STA $BC    [$00:00BC]   A:0008 X:0000 Y:000E 
C2/9374 E8          INX                     A:0008 X:0000 Y:000E ;subtract 1
C2/9375 E8          INX                     A:0008 X:0001 Y:000E ;
C2/9376 86 B2       STX $B2    [$00:00B2]   A:0008 X:0002 Y:000E 
C2/9378 A5 B5       LDA $B5    [$00:00B5]   A:0008 X:0002 Y:000E ;the monster is assigned to one of 8 bits
C2/937A 24 B6       BIT $B6    [$00:00B6]   A:0080 X:0002 Y:000E ;test bits from B6 (Is monster used? bits)
C2/937C F0 52       BEQ $52    [$93D0]      A:0080 X:0002 Y:000E ;jump to C2/93D0
C2/937E 24 B7       BIT $B7    [$00:00B7]   A:0080 X:0002 Y:000E ;test bits from B7 (Is Monster hidden? bits)
C2/9380 D0 04       BNE $04    [$9386]      A:0080 X:0002 Y:000E 
C2/9382 A9 00       LDA #$00                A:0080 X:0002 Y:000E ;sets mortality status
C2/9384 80 02       BRA $02    [$9388]      A:0000 X:0002 Y:000E 
C2/9386 A9 C0							 ;sets target moral status to Disabled/Removed
C2/9388 85 B8       STA $B8    [$00:00B8]   A:0000 X:0002 Y:000E 
C2/938A BF 00 C0 F9 LDA $F9C000,x[$F9:C002] A:0000 X:0002 Y:000E ;load monster number
C2/938E 85 B9       STA $B9    [$00:00B9]   A:0000 X:0002 Y:000E 
C2/9390 BF 01 C0 F9 LDA $F9C001,x[$F9:C003] A:0000 X:0002 Y:000E ;load Xcoordinate
C2/9394 85 BA       STA $BA    [$00:00BA]   A:00A7 X:0002 Y:000E 
C2/9396 BF 02 C0 F9 LDA $F9C002,x[$F9:C004] A:00A7 X:0002 Y:000E ;load Ycoordinate
C2/939A 85 BB       STA $BB    [$00:00BB]   A:0087 X:0002 Y:000E 
C2/939C A6 BE       LDX $BE    [$00:00BE]   A:0087 X:0002 Y:000E 
C2/939E E8          INX                     A:0087 X:FFFE Y:000E 
C2/939F E8          INX                     A:0087 X:FFFF Y:000E 
C2/93A0 86 BE       STX $BE    [$00:00BE]   A:0087 X:0000 Y:000E 
C2/93A2 C2 20       REP #$20                A:0087 X:0000 Y:000E 
C2/93A4 BF 2D 01 C2 LDA $C2012D,x[$C2:012D] A:0087 X:0000 Y:000E ;load RAM address location for current monster
C2/93A8 AA          TAX                     A:FC00 X:0000 Y:000E 
C2/93A9 E2 20       SEP #$20                A:FC00 X:FC00 Y:000E 
C2/93AB A5 B8       LDA $B8    [$00:00B8]   A:FC00 X:FC00 Y:000E 
C2/93AD 9F 00 00 7E STA $7E0000,x[$7E:FC00] A:FC00 X:FC00 Y:000E 
C2/93B1 A5 B9       LDA $B9    [$00:00B9]   A:FC00 X:FC00 Y:000E 
C2/93B3 9F 01 00 7E STA $7E0001,x[$7E:FC01] A:FC00 X:FC00 Y:000E 
C2/93B7 A5 BA       LDA $BA    [$00:00BA]   A:FC00 X:FC00 Y:000E 
C2/93B9 9F 3B 00 7E STA $7E003B,x[$7E:FC3B] A:FCA7 X:FC00 Y:000E 
C2/93BD A5 BB       LDA $BB    [$00:00BB]   A:FCA7 X:FC00 Y:000E 
C2/93BF 9F 3C 00 7E STA $7E003C,x[$7E:FC3C] A:FC87 X:FC00 Y:000E 
C2/93C3 20 DE 93    JSR $93DE  [$C2:93DE]   A:FC87 X:FC00 Y:000E 

C2/93D0 46 B5       LSR $B5    [$00:00B5]   A:0001 X:0017 Y:0008 ;8-bit counter = 8 possible monsters
C2/93D2 A6 B2       LDX $B2    [$00:00B2]   A:0001 X:0017 Y:0008 
C2/93D4 E8          INX                     A:0001 X:0017 Y:0008 
C2/93D5 E8          INX                     A:0001 X:0018 Y:0008 
C2/93D6 E8          INX                     A:0001 X:0019 Y:0008 
C2/93D7 C6 BC       DEC $BC    [$00:00BC]   A:0001 X:001A Y:0008 
C2/93D9 D0 9B       BNE $9B    [$9376]      A:0001 X:001A Y:0008 
C2/93DB C2 20       REP #$20                A:0001 X:001A Y:0008 
C2/93DD 60          RTS                     A:0001 X:001A Y:0008 

Load monster stats
C2/93DE C2 20       REP #$20                A:FC7F X:FC00 Y:000E ;set 16-bit A
C2/93E0 86 C0       STX $C0    [$00:00C0]   A:FC7F X:FC00 Y:000E ;store for indirect RAM reads
C2/93E2 AF 00 00 F9 LDA $F90000[$F9:0000]   A:FC7F X:FC00 Y:000E ;load monster stat ptr data block
C2/93E6 85 C2       STA $C2    [$00:00C2]   A:0026 X:FC00 Y:000E 
C2/93E8 A9 F9 00    LDA #$00F9              A:0026 X:FC00 Y:000E ;load databank to read
C2/93EB 85 C4       STA $C4    [$00:00C4]   A:00F9 X:FC00 Y:000E ;store to databank register
C2/93ED BF 01 00 7E LDA $7E0001,x[$7E:FC01] A:00F9 X:FC00 Y:000E ;load monster ID #
C2/93F1 29 FF 00    AND #$00FF              A:5501 X:FC00 Y:000E ;isolate monster byte
C2/93F4 0A          ASL A                   A:0001 X:FC00 Y:000E 
C2/93F5 A8          TAY                     A:0002 X:FC00 Y:000E 
C2/93F6 B7 C2       LDA [$C2],y[$F9:0028]   A:0002 X:FC00 Y:0002 ;read from stat ptr
C2/93F8 85 C2       STA $C2    [$00:00C2]   A:0236 X:FC00 Y:0002 ;store to register
C2/93FA 8A          TXA                     A:0236 X:FC00 Y:0002 
C2/93FB 18          CLC                     A:FC00 X:FC00 Y:0002 ;clear carry flag
C2/93FC 69 13 00    ADC #$0013              A:FC00 X:FC00 Y:0002 ;add constant to copy indirect to RAM
C2/93FF A8          TAY                     A:FC13 X:FC00 Y:0002 
C2/9400 A6 C2       LDX $C2    [$00:00C2]   A:FC13 X:FC00 Y:FC13 ;load offset to copy indirect from rom
C2/9402 A9 0F 00    LDA #$000F              A:FC13 X:0236 Y:FC13 ;load number of bytes to copy +1
C2/9405 8B          PHB                     A:000F X:0236 Y:FC13 ;push databank register for copying
C2/9406 54 7E F9    MVN 7E F9               A:000F X:0236 Y:FC13 ;copy monster stats to RAM
C2/9406 54 7E F9    MVN 7E F9               A:000E X:0237 Y:FC14  ...
C2/9406 54 7E F9    MVN 7E F9               A:000D X:0238 Y:FC15  ...
C2/9406 54 7E F9    MVN 7E F9               A:000C X:0239 Y:FC16 
C2/9406 54 7E F9    MVN 7E F9               A:000B X:023A Y:FC17 
C2/9406 54 7E F9    MVN 7E F9               A:000A X:023B Y:FC18 
C2/9406 54 7E F9    MVN 7E F9               A:0009 X:023C Y:FC19 
C2/9406 54 7E F9    MVN 7E F9               A:0008 X:023D Y:FC1A 
C2/9406 54 7E F9    MVN 7E F9               A:0007 X:023E Y:FC1B 
C2/9406 54 7E F9    MVN 7E F9               A:0006 X:023F Y:FC1C 
C2/9406 54 7E F9    MVN 7E F9               A:0005 X:0240 Y:FC1D 
C2/9406 54 7E F9    MVN 7E F9               A:0004 X:0241 Y:FC1E 
C2/9406 54 7E F9    MVN 7E F9               A:0003 X:0242 Y:FC1F 
C2/9406 54 7E F9    MVN 7E F9               A:0002 X:0243 Y:FC20 
C2/9406 54 7E F9    MVN 7E F9               A:0001 X:0244 Y:FC21  ...
C2/9406 54 7E F9    MVN 7E F9               A:0000 X:0245 Y:FC22  ...
C2/9409 AB          PLB                     A:FFFF X:0246 Y:FC23 ;pull databank register

C2/940A A6 C0       LDX $C0    [$00:00C0]   A:FFFF X:0246 Y:FC23 ;load indirect RAM address
C2/940C BF 13 00 7E LDA $7E0013,x[$7E:FC13] A:FFFF X:FC00 Y:FC23 ;load monster 1's max HP
C2/9410 9F 11 00 7E STA $7E0011,x[$7E:FC11] A:0014 X:FC00 Y:FC23 ;store as current HP
C2/9414 BF 22 00 7E LDA $7E0022,x[$7E:FC22] A:0014 X:FC00 Y:FC23 ;load monster's 'entrance style' byte
C2/9418 29 30 00    AND #$0030              A:5542 X:FC00 Y:FC23 ;isolate 'elevation' bits
C2/941B 9F 3D 00 7E STA $7E003D,x[$7E:FC3D] A:0000 X:FC00 Y:FC23 ;store as current elevation
C2/941F A9 FF FF    LDA #$FFFF              A:0000 X:FC00 Y:FC23 
C2/9422 9F 3E 00 7E STA $7E003E,x[$7E:FC3E] A:FFFF X:FC00 Y:FC23 
C2/9426 AF 1E 00 F9 LDA $F9001E[$F9:001E]   A:FFFF X:FC00 Y:FC23 ;load targetting cursor x/y coordinates
C2/942A 85 C2       STA $C2    [$00:00C2]   A:B944 X:FC00 Y:FC23 
C2/942C A9 F9 00    LDA #$00F9              A:B944 X:FC00 Y:FC23 
C2/942F 85 C4       STA $C4    [$00:00C4]   A:00F9 X:FC00 Y:FC23 
C2/9431 BF 01 00 7E LDA $7E0001,x[$7E:FC01] A:00F9 X:FC00 Y:FC23 ;load monster byte
C2/9435 29 FF 00    AND #$00FF              A:5501 X:FC00 Y:FC23 ;isolate monster byte
C2/9438 A8          TAY                     A:0001 X:FC00 Y:FC23 ;transfer to Y for indirect read
C2/9439 B7 C2       LDA [$C2],y[$F9:B945]   A:0001 X:FC00 Y:0001 ;load 'target position' from monster byte
C2/943B A8          TAY                     A:2212 X:FC00 Y:0001 
C2/943C 29 F0 00    AND #$00F0              A:2212 X:FC00 Y:2212 
C2/943F 4A          LSR A                   A:0010 X:FC00 Y:2212 ;isolate X coord bits
C2/9440 85 C2       STA $C2    [$00:00C2]   A:0008 X:FC00 Y:2212 
C2/9442 98          TYA                     A:0008 X:FC00 Y:2212 
C2/9443 29 0F 00    AND #$000F              A:2212 X:FC00 Y:2212 ;isolate Y coord bits
C2/9446 0A          ASL A                   A:0002 X:FC00 Y:2212 ;x8
C2/9447 0A          ASL A                   A:0004 X:FC00 Y:2212 
C2/9448 0A          ASL A                   A:0008 X:FC00 Y:2212 
C2/9449 EB          XBA                     A:0010 X:FC00 Y:2212 
C2/944A 05 C2       ORA $C2    [$00:00C2]   A:1000 X:FC00 Y:2212 ;combine X coord & Y coord bits
C2/944C 9F 37 00 7E STA $7E0037,x[$7E:FC37] A:1008 X:FC00 Y:2212 ;store to 'target position'
C2/9450 A9 00 00    LDA #$0000              A:1008 X:FC00 Y:2212 
C2/9453 9F 40 00 7E STA $7E0040,x[$7E:FC40] A:0000 X:FC00 Y:2212 
C2/9457 9F 42 00 7E STA $7E0042,x[$7E:FC42] A:0000 X:FC00 Y:2212 
C2/945B 9F 44 00 7E STA $7E0044,x[$7E:FC44] A:0000 X:FC00 Y:2212 

C2/945F E2 20       SEP #$20                A:0000 X:FC00 Y:2212 ;set 8-bit A
C2/9461 BF 1E 00 7E LDA $7E001E,x[$7E:FC1E] A:0000 X:FC00 Y:2212 ;load special defense, morph success rate, attack sound(hit)
C2/9465 4A          LSR A                   A:0008 X:FC00 Y:2212 ;divide by 16 to attack sound
C2/9466 4A          LSR A                   A:0004 X:FC00 Y:2212 
C2/9467 4A          LSR A                   A:0002 X:FC00 Y:2212 
C2/9468 4A          LSR A                   A:0001 X:FC00 Y:2212 
C2/9469 29 0F       AND #$0F                A:0000 X:FC00 Y:2212 ;isolate attack sound(hit) bits
C2/946B 9F 2F 00 7E STA $7E002F,x[$7E:FC2F] A:0000 X:FC00 Y:2212 
C2/946F BF 22 00 7E LDA $7E0022,x[$7E:FC22] A:0000 X:FC00 Y:2212 ;load 'entrance style' byte
C2/9473 29 0F       AND #$0F                A:0042 X:FC00 Y:2212 ;isolate entrance style bits
C2/9475 9F 2E 00 7E STA $7E002E,x[$7E:FC2E] A:0002 X:FC00 Y:2212 ;store as entrance style
C2/9479 BF 22 00 7E LDA $7E0022,x[$7E:FC22] A:0002 X:FC00 Y:2212 ;load 'entrance style' byte
C2/947D 2A          ROL A                   A:0042 X:FC00 Y:2212 ;rotate left to coin animation bit
C2/947E 2A          ROL A                   A:0085 X:FC00 Y:2212 
C2/947F 2A          ROL A                   A:000A X:FC00 Y:2212 
C2/9480 29 03       AND #$03                A:0015 X:FC00 Y:2212 ;isolate coin animation bit
C2/9482 9F 2C 00 7E STA $7E002C,x[$7E:FC2C] A:0001 X:FC00 Y:2212 ;store as coin animation
C2/9486 BF 1E 00 7E LDA $7E001E,x[$7E:FC1E] A:0001 X:FC00 Y:2212 ;load special defense
C2/948A 29 03       AND #$03                A:0008 X:FC00 Y:2212 ;isolate 1st three bits
C2/948C 9F 41 00 7E STA $7E0041,x[$7E:FC41] A:0000 X:FC00 Y:2212 ;store as Monster Invincibility (bit0) Mortality Protection (bit1)
C2/9490 BF 15 00 7E LDA $7E0015,x[$7E:FC15] A:0000 X:FC00 Y:2212 ;speed
C2/9494 9F 70 00 7E STA $7E0070,x[$7E:FC70] A:000E X:FC00 Y:2212 ;modified speed
C2/9498 BF 16 00 7E LDA $7E0016,x[$7E:FC16] A:000E X:FC00 Y:2212 ;attack
C2/949C 9F 72 00 7E STA $7E0072,x[$7E:FC72] A:0006 X:FC00 Y:2212 ;modified attack
C2/94A0 BF 17 00 7E LDA $7E0017,x[$7E:FC17] A:0006 X:FC00 Y:2212 ;defense
C2/94A4 9F 74 00 7E STA $7E0074,x[$7E:FC74] A:000B X:FC00 Y:2212 ;modified defense
C2/94A8 BF 18 00 7E LDA $7E0018,x[$7E:FC18] A:000B X:FC00 Y:2212 ;magic attack
C2/94AC 9F 76 00 7E STA $7E0076,x[$7E:FC76] A:0004 X:FC00 Y:2212 ;modified magic attack
C2/94B0 BF 19 00 7E LDA $7E0019,x[$7E:FC19] A:0004 X:FC00 Y:2212 ;magic defense
C2/94B4 9F 78 00 7E STA $7E0078,x[$7E:FC78] A:0002 X:FC00 Y:2212 ;modified magic defense
C2/94B8 A9 00       LDA #$00                A:0002 X:FC00 Y:2212 
C2/94BA 9F 71 00 7E STA $7E0071,x[$7E:FC71] A:0000 X:FC00 Y:2212 
C2/94BE 9F 73 00 7E STA $7E0073,x[$7E:FC73] A:0000 X:FC00 Y:2212 
C2/94C2 9F 75 00 7E STA $7E0075,x[$7E:FC75] A:0000 X:FC00 Y:2212 
C2/94C6 9F 77 00 7E STA $7E0077,x[$7E:FC77] A:0000 X:FC00 Y:2212 
C2/94CA 9F 79 00 7E STA $7E0079,x[$7E:FC79] A:0000 X:FC00 Y:2212 
C2/94CE 9F 4B 00 7E STA $7E004B,x[$7E:FC4B] A:0000 X:FC00 Y:2212 ;element on weapon
C2/94D2 BF 1F 00 7E LDA $7E001F,x[$7E:FC1F] A:0000 X:FC00 Y:2212 ;lower bits are approaching attack sounds, upper bits are ineffective elements
C2/94D6 9F 4C 00 7E STA $7E004C,x[$7E:FC4C] A:0080 X:FC00 Y:2212 ;ineffective elements
C2/94DA BF 20 00 7E LDA $7E0020,x[$7E:FC20] A:0080 X:FC00 Y:2212 ;spells list
C2/94DE 9F 4D 00 7E STA $7E004D,x[$7E:FC4D] A:0001 X:FC00 Y:2212 ;elemental strength (-50% damage from set element)
C2/94E2 BF 21 00 7E LDA $7E0021,x[$7E:FC21] A:0001 X:FC00 Y:2212 ;
C2/94E6 9F 4E 00 7E STA $7E004E,x[$7E:FC4E] A:0000 X:FC00 Y:2212 ;ailment protection
C2/94EA A9 00       LDA #$00                A:0000 X:FC00 Y:2212 
C2/94EC 9F 4F 00 7E STA $7E004F,x[$7E:FC4F] A:0000 X:FC00 Y:2212 ;status enhancements from equipment
C2/94F0 60          RTS                     A:0000 X:FC00 Y:2212 ;end

=================================================================
MONSTER: Stats
C2/94F1 C2 20       REP #$20                A:FFFF X:FC00 Y:000C
C2/94F3 86 C0       STX $C0    [$00:00C0]   A:FFFF X:FC00 Y:000C
C2/94F5 A9 C0 00    LDA #$00C0              A:FFFF X:FC00 Y:000C
C2/94F8 85 E0       STA $E0    [$00:00E0]   A:00C0 X:FC00 Y:000C
C2/94FA BF 01 00 7E LDA $7E0001,x[$7E:FC01] A:00C0 X:FC00 Y:000C
C2/94FE 29 FF 00    AND #$00FF              A:0001 X:FC00 Y:000C
C2/9501 09 00 01    ORA #$0100              A:0001 X:FC00 Y:000C
C2/9504 85 E2       STA $E2    [$00:00E2]   A:0101 X:FC00 Y:000C
C2/9506 A9 00 00    LDA #$0000              A:0101 X:FC00 Y:000C
C2/9509 85 E4       STA $E4    [$00:00E4]   A:0000 X:FC00 Y:000C
C2/950B AF 00 00 F5 LDA $F50000[$F5:0000]   A:0000 X:FC00 Y:000C
C2/950F 85 EA       STA $EA    [$00:00EA]   A:0002 X:FC00 Y:000C
C2/9511 A9 F5 00    LDA #$00F5              A:0002 X:FC00 Y:000C
C2/9514 85 EC       STA $EC    [$00:00EC]   A:00F5 X:FC00 Y:000C
C2/9516 20 19 07    JSR $0719  [$C2:0719]   A:00F5 X:FC00 Y:000C ; ???
C2/9519 86 C2       STX $C2    [$00:00C2]   A:0000 X:2400 Y:0202
C2/951B A5 C0       LDA $C0    [$00:00C0]   A:0000 X:2400 Y:0202
C2/951D 9F 0A 00 40 STA $40000A,x[$40:240A] A:FC00 X:2400 Y:0202
C2/9521 8A          TXA                     A:FC00 X:2400 Y:0202
C2/9522 A6 C0       LDX $C0    [$00:00C0]   A:2400 X:2400 Y:0202
C2/9524 9F 3E 00 7E STA $7E003E,x[$7E:FC3E] A:2400 X:FC00 Y:0202
C2/9528 AD 50 30    LDA $3050  [$00:3050]   A:2400 X:FC00 Y:0202
C2/952B 89 02 00    BIT #$0002              A:0000 X:FC00 Y:0202
C2/952E D0 05       BNE $05    [$9535]      A:0000 X:FC00 Y:0202
C2/9530 A9 28 00    LDA #$0028              A:0000 X:FC00 Y:0202
C2/9533 80 03       BRA $03    [$9538]      A:0028 X:FC00 Y:0202
C2/9538 EB          XBA                     A:0028 X:FC00 Y:0202
C2/9539 09 C1 00    ORA #$00C1              A:2800 X:FC00 Y:0202
C2/953C 85 E0       STA $E0    [$00:00E0]   A:28C1 X:FC00 Y:0202
C2/953E A5 E2       LDA $E2    [$00:00E2]   A:28C1 X:FC00 Y:0202
C2/9540 29 FF 00    AND #$00FF              A:0101 X:FC00 Y:0202
C2/9543 20 C3 95    JSR $95C3  [$C2:95C3]   A:0001 X:FC00 Y:0202

C2/95C3 85 C8       STA $C8    [$00:00C8]   A:0001 X:FC00 Y:0202
C2/95C5 A2 00 00    LDX #$0000              A:0001 X:FC00 Y:0202
C2/95C8 9B          TXY                     A:0001 X:0000 Y:0202
C2/95C9 BF 2D 01 C2 LDA $C2012D,x[$C2:012D] A:0001 X:0000 Y:0000
C2/95CD C5 C0       CMP $C0    [$00:00C0]   A:FC00 X:0000 Y:0000
C2/95CF F0 26       BEQ $26    [$95F7]      A:FC00 X:0000 Y:0000
C2/95F7 A5 CC       LDA $CC    [$00:00CC]   A:FC00 X:0000 Y:0000
C2/95F9 18          CLC                     A:0008 X:0000 Y:0000
C2/95FA 69 02 00    ADC #$0002              A:0008 X:0000 Y:0000
C2/95FD 85 CC       STA $CC    [$00:00CC]   A:000A X:0000 Y:0000
C2/95FF 60          RTS                     A:000A X:0000 Y:0000
C2/9546 09 20 00    ORA #$0020              A:000A X:0000 Y:0000
C2/9549 85 EC       STA $EC    [$00:00EC]   A:002A X:0000 Y:0000
C2/954B A9 00 00    LDA #$0000              A:002A X:0000 Y:0000
C2/954E 85 E4       STA $E4    [$00:00E4]   A:0000 X:0000 Y:0000
C2/9550 A6 C0       LDX $C0    [$00:00C0]   A:0000 X:0000 Y:0000
C2/9552 BF 3B 00 7E LDA $7E003B,x[$7E:FC3B] A:0000 X:FC00 Y:0000
C2/9556 29 FF 00    AND #$00FF              A:78B0 X:FC00 Y:0000
C2/9559 85 E6       STA $E6    [$00:00E6]   A:00B0 X:FC00 Y:0000
C2/955B BF 3C 00 7E LDA $7E003C,x[$7E:FC3C] A:00B0 X:FC00 Y:0000
C2/955F 29 FF 00    AND #$00FF              A:0078 X:FC00 Y:0000
C2/9562 85 E8       STA $E8    [$00:00E8]   A:0078 X:FC00 Y:0000
C2/9564 BF 3D 00 7E LDA $7E003D,x[$7E:FC3D] A:0078 X:FC00 Y:0000
C2/9568 29 FF 00    AND #$00FF              A:0000 X:FC00 Y:0000
C2/956B 49 FF FF    EOR #$FFFF              A:0000 X:FC00 Y:0000
C2/956E 1A          INC A                   A:FFFF X:FC00 Y:0000
C2/956F 85 EA       STA $EA    [$00:00EA]   A:0000 X:FC00 Y:0000
C2/9571 A5 CE       LDA $CE    [$00:00CE]   A:0000 X:FC00 Y:0000
C2/9573 85 EE       STA $EE    [$00:00EE]   A:7000 X:FC00 Y:0000
C2/9575 20 F2 70    JSR $70F2  [$C2:70F2]   A:7000 X:FC00 Y:0000
C2/9578 BF 19 00 40 LDA $400019,x[$40:4019] A:0000 X:4000 Y:0008
C2/957C 29 FF 00    AND #$00FF              A:0008 X:4000 Y:0008
C2/957F EB          XBA                     A:0008 X:4000 Y:0008
C2/9580 4A          LSR A                   A:0800 X:4000 Y:0008
C2/9581 4A          LSR A                   A:0400 X:4000 Y:0008
C2/9582 18          CLC                     A:0200 X:4000 Y:0008
C2/9583 65 CE       ADC $CE    [$00:00CE]   A:0200 X:4000 Y:0008
C2/9585 85 CE       STA $CE    [$00:00CE]   A:7200 X:4000 Y:0008
C2/9587 8A          TXA                     A:7200 X:4000 Y:0008
C2/9588 A6 C2       LDX $C2    [$00:00C2]   A:4000 X:4000 Y:0008
C2/958A 9F 0E 00 40 STA $40000E,x[$40:240E] A:4000 X:2400 Y:0008
C2/958E A5 E6       LDA $E6    [$00:00E6]   A:4000 X:2400 Y:0008
C2/9590 9F 32 00 40 STA $400032,x[$40:2432] A:00B0 X:2400 Y:0008
C2/9594 A5 E8       LDA $E8    [$00:00E8]   A:00B0 X:2400 Y:0008
C2/9596 9F 36 00 40 STA $400036,x[$40:2436] A:0078 X:2400 Y:0008
C2/959A A5 EA       LDA $EA    [$00:00EA]   A:0078 X:2400 Y:0008
C2/959C 9F 3A 00 40 STA $40003A,x[$40:243A] A:0000 X:2400 Y:0008
C2/95A0 A9 00 00    LDA #$0000              A:0000 X:2400 Y:0008
C2/95A3 9F 30 00 40 STA $400030,x[$40:2430] A:0000 X:2400 Y:0008
C2/95A7 9F 34 00 40 STA $400034,x[$40:2434] A:0000 X:2400 Y:0008
C2/95AB 9F 38 00 40 STA $400038,x[$40:2438] A:0000 X:2400 Y:0008
C2/95AF A9 00 80    LDA #$8000              A:0000 X:2400 Y:0008
C2/95B2 9F 40 00 40 STA $400040,x[$40:2440] A:8000 X:2400 Y:0008
C2/95B6 9F 42 00 40 STA $400042,x[$40:2442] A:8000 X:2400 Y:0008
C2/95BA 9F 44 00 40 STA $400044,x[$40:2444] A:8000 X:2400 Y:0008
C2/95BE A6 C0       LDX $C0    [$00:00C0]   A:8000 X:2400 Y:0008
C2/95C0 E2 20       SEP #$20                A:8000 X:FC00 Y:0008
C2/95C2 60          RTS                     A:8000 X:FC00 Y:0008
=================================================================
animation loader
C2/9600 A9 00 00    LDA #$0000              A:0000 X:004E Y:0008
C2/9603 85 CC       STA $CC    [$00:00CC]   A:0000 X:004E Y:0008
C2/9605 A9 00 68    LDA #$6800              A:0000 X:004E Y:0008
C2/9608 85 CE       STA $CE    [$00:00CE]   A:6800 X:004E Y:0008
C2/960A A2 00 00    LDX #$0000              A:6800 X:004E Y:0008
C2/960D 9B          TXY                     A:6800 X:0000 Y:0008
C2/960E BF 27 01 C2 LDA $C20127,x[$C2:0127] A:6800 X:0000 Y:0000
C2/9612 AA          TAX                     A:FA80 X:0000 Y:0000
C2/9613 A9 80 FF    LDA #$FF80              A:FA80 X:FA80 Y:0000
C2/9616 9F 00 00 7E STA $7E0000,x[$7E:FA80] A:FF80 X:FA80 Y:0000
C2/961A BB          TYX                     A:FF80 X:FA80 Y:0000
C2/961B E8          INX                     A:FF80 X:0000 Y:0000
C2/961C E8          INX                     A:FF80 X:0001 Y:0000
C2/961D E0 05 00    CPX #$0005              A:FF80 X:0002 Y:0000
C2/9620 30 EB       BMI $EB    [$960D]      A:FF80 X:0002 Y:0000

C2/960D 9B          TXY                     A:FF80 X:0002 Y:0000
C2/960E BF 27 01 C2 LDA $C20127,x[$C2:0129] A:FF80 X:0002 Y:0002
C2/9612 AA          TAX                     A:FB00 X:0002 Y:0002
C2/9613 A9 80 FF    LDA #$FF80              A:FB00 X:FB00 Y:0002 
C2/9616 9F 00 00 7E STA $7E0000,x[$7E:FB00] A:FF80 X:FB00 Y:0002 
C2/961A BB          TYX                     A:FF80 X:FB00 Y:0002
C2/961B E8          INX                     A:FF80 X:0002 Y:0002
C2/961C E8          INX                     A:FF80 X:0003 Y:0002
C2/961D E0 05 00    CPX #$0005              A:FF80 X:0004 Y:0002
C2/9620 30 EB       BMI $EB    [$960D]      A:FF80 X:0004 Y:0002

C2/9622 AD 32 30    LDA $3032  [$00:3032]   A:FF80 X:0006 Y:0004
C2/9625 29 FF 00    AND #$00FF              A:0001 X:0006 Y:0004
C2/9628 C9 04 00    CMP #$0004              A:0001 X:0006 Y:0004
C2/962B 30 03       BMI $03    [$9630]      A:0001 X:0006 Y:0004

C2/9630 3A          DEC A                   A:0001 X:0006 Y:0004
C2/9631 85 B2       STA $B2    [$00:00B2]   A:0000 X:0006 Y:0004

C2/9633 0A          ASL A                   A:0000 X:0006 Y:0004
C2/9634 0A          ASL A                   A:0000 X:0006 Y:0004
C2/9635 0A          ASL A                   A:0000 X:0006 Y:0004
C2/9636 85 BC       STA $BC    [$00:00BC]   A:0000 X:0006 Y:0004
C2/9638 A9 00 F8    LDA #$F800              A:0000 X:0006 Y:0004
C2/963B 85 B4       STA $B4    [$00:00B4]   A:F800 X:0006 Y:0004
C2/963D A9 7F 00    LDA #$007F              A:F800 X:0006 Y:0004
C2/9640 85 B6       STA $B6    [$00:00B6]   A:007F X:0006 Y:0004
C2/9642 A9 FE FF    LDA #$FFFE              A:007F X:0006 Y:0004
C2/9645 85 BE       STA $BE    [$00:00BE]   A:FFFE X:0006 Y:0004

C2/9647 A4 B2       LDY $B2    [$00:00B2]   A:FFFE X:0006 Y:0004
C2/9649 B9 33 30    LDA $3033,y[$00:3033]   A:FFFE X:0006 Y:0000
C2/964C 29 FF 00    AND #$00FF              A:0000 X:0006 Y:0000
C2/964F AA          TAX                     A:0000 X:0006 Y:0000
C2/9650 86 BA       STX $BA    [$00:00BA]   A:0000 X:0000 Y:0000

C2/9652 BF 25 02 C2 LDA $C20225,x[$C2:0227] A:0002 X:0002 Y:0002;load character sprite indexes
Character sprite indexes
	 02 ;Mario
	 08 ;Toadstool
	 0E ;Bowser
	 1A ;Geno
	 14 ;Mallow
	 21 ;6th Party member

C2/9656 29 FF 00    AND #$00FF              A:1A0E X:0002 Y:0002
C2/9659 85 B8       STA $B8    [$00:00B8]   A:000E X:0002 Y:0002
C2/965B A6 BE       LDX $BE    [$00:00BE]   A:000E X:0002 Y:0002
C2/965D E8          INX                     A:000E X:FFFE Y:0002
C2/965E E8          INX                     A:000E X:FFFF Y:0002
C2/965F 86 BE       STX $BE    [$00:00BE]   A:000E X:0000 Y:0002
C2/9661 BF 27 01 C2 LDA $C20127,x[$C2:0127] A:000E X:0000 Y:0002 ;load character slot
C2/9665 AA          TAX                     A:FA80 X:0000 Y:0002
C2/9666 A9 00 00    LDA #$0000              A:FA80 X:FA80 Y:0002
C2/9669 9F 00 00 7E STA $7E0000,x[$7E:FA80] A:0000 X:FA80 Y:0002
C2/966D BF 01 00 7E LDA $7E0001,x[$7E:FA81] A:0000 X:FA80 Y:0002
C2/9671 29 00 FF    AND #$FF00              A:0000 X:FA80 Y:0002
C2/9674 05 BA       ORA $BA    [$00:00BA]   A:0000 X:FA80 Y:0002
C2/9676 9F 01 00 7E STA $7E0001,x[$7E:FA81] A:0002 X:FA80 Y:0002
C2/967A BF 2D 00 7E LDA $7E002D,x[$7E:FAAD] A:0002 X:FA80 Y:0002 ;loads byte of character in battle
C2/967E 29 00 FF    AND #$FF00              A:210E X:FA80 Y:0002
C2/9681 05 B8       ORA $B8    [$00:00B8]   A:2100 X:FA80 Y:0002
C2/9683 9F 2D 00 7E STA $7E002D,x[$7E:FAAD] A:210E X:FA80 Y:0002 ;sets character sprite in battle

	02 ;Mario
	08 ;Toadstool
	0E ;Bowser
	1A ;Geno
	14 ;Mallow
	21 ;6th Party member
C2/9687 9B          TXY                     A:FF02 X:FA80 Y:0000
C2/9688 A5 B2       LDA $B2    [$00:00B2]   A:FF02 X:FA80 Y:FA80
C2/968A 0A          ASL A                   A:0000 X:FA80 Y:FA80
C2/968B 18          CLC                     A:0000 X:FA80 Y:FA80
C2/968C 65 BC       ADC $BC    [$00:00BC]   A:0000 X:FA80 Y:FA80
C2/968E AA          TAX                     A:0000 X:FA80 Y:FA80
C2/968F BF AD 96 C2 LDA $C296AD,x[$C2:96AD] A:0000 X:0000 Y:FA80 ;Load coordinates for where the character stands in battle

...table from 96AD...
...Depending on how many are in the party...
One	57 AF | 00 00 | 00 00 | 00 00 
Two	40 A3 | 70 BB | 00 00 | 00 00
Three	37 9F | 57 AF | 77 BF | 00 00

C2/9693 BB          TYX                     A:BF57 X:0000 Y:FA80
C2/9694 9F 3B 00 7E STA $7E003B,x[$7E:FABB] A:BF57 X:FA80 Y:FA80 ;Store character coordinates to character
C2/9698 20 C5 96    JSR $96C5  [$C2:96C5]   A:BF57 X:FA80 Y:FA80 ;ALLY: stats loader
C2/969B 22 1B A0 C2 JSL $C2A01B[$C2:A01B]   A:1808 X:FA80 Y:1313 ;load statuses before battle
C2/969F 20 58 97    JSR $9758  [$C2:9758]   A:00FF X:FA80 Y:0010
C2/96A2 20 38 98    JSR $9838  [$C2:9838]   A:8000 X:FA80 Y:0008
C2/96A5 A5 B2       LDA $B2    [$00:00B2]   A:0000 X:0002 Y:0008
C2/96A7 3A          DEC A                   A:0002 X:0002 Y:0008
C2/96A8 85 B2       STA $B2    [$00:00B2]   A:0001 X:0002 Y:0008
C2/96AA 10 9B       BPL $9B    [$9647]      A:0001 X:0002 Y:0008
...

ALLY: stats loader
C2/96C5 86 C0       STX $C0    [$00:00C0]   A:AF57 X:FA80 Y:FA80
C2/96C7 A5 BA       LDA $BA    [$00:00BA]   A:AF57 X:FA80 Y:FA80
C2/96C9 AA          TAX                     A:0000 X:FA80 Y:FA80
C2/96CA BF 4C 97 C2 LDA $C2974C,x[$C2:974C] A:0000 X:0000 Y:FA80
C2/96CE 29 FF 00    AND #$00FF              A:1400 X:0000 Y:FA80
C2/96D1 85 C2       STA $C2    [$00:00C2]   A:0000 X:0000 Y:FA80
C2/96D3 AD 00 07    LDA $0700  [$00:0700]   A:0000 X:0000 Y:FA80
C2/96D6 89 20 00    BIT #$0020              A:0000 X:0000 Y:FA80
C2/96D9 D0 0A       BNE $0A    [$96E5]      A:0000 X:0000 Y:FA80
C2/96DB AD 64 0B    LDA $0B64  [$00:0B64]   A:0000 X:0000 Y:FA80
C2/96DE D0 05       BNE $05    [$96E5]      A:0000 X:0000 Y:FA80
C2/96E0 A9 00 F8    LDA #$F800              A:0000 X:0000 Y:FA80
C2/96E3 80 04       BRA $04    [$96E9]      A:F800 X:0000 Y:FA80
	AF 28 00 FA						 ;???
C2/96E9 18          CLC                     A:F800 X:0000 Y:FA80
C2/96EA 65 C2       ADC $C2    [$00:00C2]   A:F800 X:0000 Y:FA80
C2/96EC 85 C2       STA $C2    [$00:00C2]   A:F800 X:0000 Y:FA80
C2/96EE A5 C0       LDA $C0    [$00:00C0]   A:F800 X:0000 Y:FA80
C2/96F0 18          CLC                     A:FA80 X:0000 Y:FA80
C2/96F1 69 10 00    ADC #$0010              A:FA80 X:0000 Y:FA80
C2/96F4 A8          TAY                     A:FA90 X:0000 Y:FA80
C2/96F5 A6 C2       LDX $C2    [$00:00C2]   A:FA90 X:0000 Y:FA90
C2/96F7 8B          PHB                     A:FA90 X:F800 Y:FA90
C2/96F8 AD 00 07    LDA $0700  [$00:0700]   A:FA90 X:F800 Y:FA90
C2/96FB 89 20 00    BIT #$0020              A:0000 X:F800 Y:FA90
C2/96FE D0 0D       BNE $0D    [$970D]      A:0000 X:F800 Y:FA90
C2/9700 AD 64 0B    LDA $0B64  [$00:0B64]   A:0000 X:F800 Y:FA90
C2/9703 D0 08       BNE $08    [$970D]      A:0000 X:F800 Y:FA90
C2/9705 A9 13 00    LDA #$0013              A:0000 X:F800 Y:FA90
$C2/9708 54 7E 7F    MVN 7F 7E               A:0013 X:F800 Y:FA90
$C2/9708 54 7E 7F    MVN 7F 7E               A:0012 X:F801 Y:FA91
$C2/9708 54 7E 7F    MVN 7F 7E               A:0011 X:F802 Y:FA92
$C2/9708 54 7E 7F    MVN 7F 7E               A:0010 X:F803 Y:FA93
$C2/9708 54 7E 7F    MVN 7F 7E               A:000F X:F804 Y:FA94
$C2/9708 54 7E 7F    MVN 7F 7E               A:000E X:F805 Y:FA95
$C2/9708 54 7E 7F    MVN 7F 7E               A:000D X:F806 Y:FA96
$C2/9708 54 7E 7F    MVN 7F 7E               A:000C X:F807 Y:FA97
$C2/9708 54 7E 7F    MVN 7F 7E               A:000B X:F808 Y:FA98
$C2/9708 54 7E 7F    MVN 7F 7E               A:000A X:F809 Y:FA99
$C2/9708 54 7E 7F    MVN 7F 7E               A:0009 X:F80A Y:FA9A
$C2/9708 54 7E 7F    MVN 7F 7E               A:0008 X:F80B Y:FA9B
$C2/9708 54 7E 7F    MVN 7F 7E               A:0007 X:F80C Y:FA9C
$C2/9708 54 7E 7F    MVN 7F 7E               A:0006 X:F80D Y:FA9D
$C2/9708 54 7E 7F    MVN 7F 7E               A:0005 X:F80E Y:FA9E
$C2/9708 54 7E 7F    MVN 7F 7E               A:0004 X:F80F Y:FA9F
$C2/9708 54 7E 7F    MVN 7F 7E               A:0003 X:F810 Y:FAA0
$C2/9708 54 7E 7F    MVN 7F 7E               A:0002 X:F811 Y:FAA1
$C2/9708 54 7E 7F    MVN 7F 7E               A:0001 X:F812 Y:FAA2
$C2/9708 54 7E 7F    MVN 7F 7E               A:0000 X:F813 Y:FAA3
$C2/970B 80 06       BRA $06    [$9713]      A:FFFF X:F814 Y:FAA4

C2/9713 AB          PLB                     A:FFFF X:F814 Y:FAA4
$C2/9714 A6 C0       LDX $C0    [$00:00C0]   A:FFFF X:F814 Y:FAA4
$C2/9716 A9 00 00    LDA #$0000              A:FFFF X:FA80 Y:FAA4
$C2/9719 9F 3D 00 7E STA $7E003D,x[$7E:FABD] A:0000 X:FA80 Y:FAA4
$C2/971D A9 FF FF    LDA #$FFFF              A:0000 X:FA80 Y:FAA4
$C2/9720 9F 3E 00 7E STA $7E003E,x[$7E:FABE] A:FFFF X:FA80 Y:FAA4
$C2/9724 A9 52 97    LDA #$9752              A:FFFF X:FA80 Y:FAA4
$C2/9727 85 C2       STA $C2    [$00:00C2]   A:9752 X:FA80 Y:FAA4
$C2/9729 A9 C2 00    LDA #$00C2              A:9752 X:FA80 Y:FAA4
$C2/972C 85 C4       STA $C4    [$00:00C4]   A:00C2 X:FA80 Y:FAA4
$C2/972E A5 BA       LDA $BA    [$00:00BA]   A:00C2 X:FA80 Y:FAA4
$C2/9730 29 FF 00    AND #$00FF              A:0000 X:FA80 Y:FAA4
$C2/9733 A8          TAY                     A:0000 X:FA80 Y:FAA4
$C2/9734 B7 C2       LDA [$C2],y[$C2:9752]   A:0000 X:FA80 Y:0000 ;Load cursor coordinates for Ally characters
	13 ;Mario
	13 ;Toadstool
	24 ;Bowser
	13 ;Geno
	12 ;Mallow
	13 ;6th Party member

$C2/9736 A8          TAY                     A:1313 X:FA80 Y:0000
$C2/9737 29 F0 00    AND #$00F0              A:1313 X:FA80 Y:1313
$C2/973A 4A          LSR A                   A:0010 X:FA80 Y:1313
C2/973B 85 C2       STA $C2    [$00:00C2]   A:0008 X:FA80 Y:1313
$C2/973D 98          TYA                     A:0008 X:FA80 Y:1313
$C2/973E 29 0F 00    AND #$000F              A:1313 X:FA80 Y:1313
$C2/9741 0A          ASL A                   A:0003 X:FA80 Y:1313
$C2/9742 0A          ASL A                   A:0006 X:FA80 Y:1313
$C2/9743 0A          ASL A                   A:000C X:FA80 Y:1313
$C2/9744 EB          XBA                     A:0018 X:FA80 Y:1313
$C2/9745 05 C2       ORA $C2    [$00:00C2]   A:1800 X:FA80 Y:1313
$C2/9747 9F 37 00 7E STA $7E0037,x[$7E:FAB7] A:1808 X:FA80 Y:1313
$C2/974B 60          RTS                     A:1808 X:FA80 Y:1313


=================================================================
ALLY: Load 'Target position' (this example uses Bowser)
C2/972C 85 C4       STA $C4    [$00:00C4]   A:00C2 X:FA80 Y:FAA4
C2/972E A5 BA       LDA $BA    [$00:00BA]   A:00C2 X:FA80 Y:FAA4
C2/9730 29 FF 00    AND #$00FF              A:0002 X:FA80 Y:FAA4
C2/9733 A8          TAY                     A:0002 X:FA80 Y:FAA4
C2/9734 B7 C2       LDA [$C2],y[$C2:9754]   A:0002 X:FA80 Y:0002
C2/9736 A8          TAY                     A:1324 X:FA80 Y:0002
C2/9737 29 F0 00    AND #$00F0              A:1324 X:FA80 Y:1324
C2/973A 4A          LSR A                   A:0020 X:FA80 Y:1324
C2/973B 85 C2       STA $C2    [$00:00C2]   A:0010 X:FA80 Y:1324
C2/973D 98          TYA                     A:0010 X:FA80 Y:1324
C2/973E 29 0F 00    AND #$000F              A:1324 X:FA80 Y:1324
C2/9741 0A          ASL A                   A:0004 X:FA80 Y:1324
C2/9742 0A          ASL A                   A:0008 X:FA80 Y:1324
C2/9743 0A          ASL A                   A:0010 X:FA80 Y:1324
C2/9744 EB          XBA                     A:0020 X:FA80 Y:1324
C2/9745 05 C2       ORA $C2    [$00:00C2]   A:2000 X:FA80 Y:1324
C2/9747 9F 37 00 7E STA $7E0037,x[$7E:FAB7] A:2010 X:FA80 Y:1324
C2/974B 60          RTS                     A:2010 X:FA80 Y:1324
=================================================================
loads before battle
C2/9758 86 C0       STX $C0    [$00:00C0]   A:00FF X:FA80 Y:0010
C2/975A A9 C0 00    LDA #$00C0              A:00FF X:FA80 Y:0010
C2/975D 85 E0       STA $E0    [$00:00E0]   A:00C0 X:FA80 Y:0010
C2/975F BF 01 00 7E LDA $7E0001,x[$7E:FA81] A:00C0 X:FA80 Y:0010
C2/9763 29 FF 00    AND #$00FF              A:FF00 X:FA80 Y:0010
C2/9766 85 E2       STA $E2    [$00:00E2]   A:0000 X:FA80 Y:0010
C2/9768 A9 00 00    LDA #$0000              A:0000 X:FA80 Y:0010
C2/976B 85 E4       STA $E4    [$00:00E4]   A:0000 X:FA80 Y:0010
C2/976D AF 00 00 F5 LDA $F50000[$F5:0000]   A:0000 X:FA80 Y:0010
C2/9771 85 EA       STA $EA    [$00:00EA]   A:0002 X:FA80 Y:0010
C2/9773 A9 F5 00    LDA #$00F5              A:0002 X:FA80 Y:0010
C2/9776 85 EC       STA $EC    [$00:00EC]   A:00F5 X:FA80 Y:0010
C2/9778 20 19 07    JSR $0719  [$C2:0719]   A:00F5 X:FA80 Y:0010
C2/977B 86 C2       STX $C2    [$00:00C2]   A:0000 X:2480 Y:0000  
$C2/977D A5 C0       LDA $C0    [$00:00C0]   A:0000 X:2480 Y:0000  
$C2/977F 9F 0A 00 40 STA $40000A,x[$40:248A] A:FA80 X:2480 Y:0000  
$C2/9783 8A          TXA                     A:FA80 X:2480 Y:0000  
$C2/9784 A6 C0       LDX $C0    [$00:00C0]   A:2480 X:2480 Y:0000  
$C2/9786 9F 3E 00 7E STA $7E003E,x[$7E:FABE] A:2480 X:FA80 Y:0000  
$C2/978A AD 50 30    LDA $3050  [$00:3050]   A:2480 X:FA80 Y:0000  
$C2/978D 89 02 00    BIT #$0002              A:0000 X:FA80 Y:0000  
$C2/9790 D0 05       BNE $05    [$9797]      A:0000 X:FA80 Y:0000  
$C2/9792 A9 30 00    LDA #$0030              A:0000 X:FA80 Y:0000  
$C2/9795 80 03       BRA $03    [$979A]      A:0030 X:FA80 Y:0000  
$C2/979A EB          XBA                     A:0030 X:FA80 Y:0000  
$C2/979B 09 C1 00    ORA #$00C1              A:3000 X:FA80 Y:0000
C2/979E 85 E0       STA $E0    [$00:00E0]   A:30C1 X:FA80 Y:0000  
$C2/97A0 BF 2D 00 7E LDA $7E002D,x[$7E:FAAD] A:30C1 X:FA80 Y:0000 ;loads character sprite index
$C2/97A4 29 FF 00    AND #$00FF              A:0002 X:FA80 Y:0000  
$C2/97A7 85 E2       STA $E2    [$00:00E2]   A:0002 X:FA80 Y:0000 ;saves it to idle animation
$C2/97A9 A9 00 00    LDA #$0000              A:0002 X:FA80 Y:0000  
$C2/97AC 85 E4       STA $E4    [$00:00E4]   A:0000 X:FA80 Y:0000  
$C2/97AE A6 C0       LDX $C0    [$00:00C0]   A:0000 X:FA80 Y:0000  
$C2/97B0 BF 3B 00 7E LDA $7E003B,x[$7E:FABB] A:0000 X:FA80 Y:0000  
$C2/97B4 29 FF 00    AND #$00FF              A:AF57 X:FA80 Y:0000  
$C2/97B7 85 E6       STA $E6    [$00:00E6]   A:0057 X:FA80 Y:0000  
$C2/97B9 BF 3C 00 7E LDA $7E003C,x[$7E:FABC] A:0057 X:FA80 Y:0000  
$C2/97BD 29 FF 00    AND #$00FF              A:00AF X:FA80 Y:0000  
$C2/97C0 85 E8       STA $E8    [$00:00E8]   A:00AF X:FA80 Y:0000  
C2/97C2 BF 3D 00 7E LDA $7E003D,x[$7E:FABD] A:00AF X:FA80 Y:0000  
$C2/97C6 29 FF 00    AND #$00FF              A:8000 X:FA80 Y:0000  
$C2/97C9 49 FF FF    EOR #$FFFF              A:0000 X:FA80 Y:0000  
$C2/97CC 1A          INC A                   A:FFFF X:FA80 Y:0000  
$C2/97CD 85 EA       STA $EA    [$00:00EA]   A:0000 X:FA80 Y:0000  
C2/97CF A5 CC       LDA $CC    [$00:00CC]   A:0000 X:FA80 Y:0000  
$C2/97D1 18          CLC                     A:0000 X:FA80 Y:0000  
$C2/97D2 69 02 00    ADC #$0002              A:0000 X:FA80 Y:0000  
$C2/97D5 85 CC       STA $CC    [$00:00CC]   A:0002 X:FA80 Y:0000  
$C2/97D7 09 20 00    ORA #$0020              A:0002 X:FA80 Y:0000  
$C2/97DA 85 EC       STA $EC    [$00:00EC]   A:0022 X:FA80 Y:0000  
$C2/97DC A5 CE       LDA $CE    [$00:00CE]   A:0022 X:FA80 Y:0000  
$C2/97DE 85 EE       STA $EE    [$00:00EE]   A:6800 X:FA80 Y:0000  
$C2/97E0 20 F2 70    JSR $70F2  [$C2:70F2]   A:6800 X:FA80 Y:0000  
C2/97E3 A5 E2       LDA $E2    [$00:00E2]   A:0000 X:4040 Y:0008  
$C2/97E5 C9 0E 00    CMP #$000E              A:0002 X:4040 Y:0008  
$C2/97E8 D0 05       BNE $05    [$97EF]      A:0002 X:4040 Y:0008  
$C2/97EF BF 19 00 40 LDA $400019,x[$40:4059] A:0002 X:4040 Y:0008  
$C2/97F3 29 FF 00    AND #$00FF              A:0008 X:4040 Y:0008  
$C2/97F6 EB          XBA                     A:0008 X:4040 Y:0008  
$C2/97F7 4A          LSR A                   A:0800 X:4040 Y:0008  
$C2/97F8 4A          LSR A                   A:0400 X:4040 Y:0008  
$C2/97F9 18          CLC                     A:0200 X:4040 Y:0008  
$C2/97FA 65 CE       ADC $CE    [$00:00CE]   A:0200 X:4040 Y:0008  
$C2/97FC 85 CE       STA $CE    [$00:00CE]   A:6A00 X:4040 Y:0008  
$C2/97FE 8A          TXA                     A:6A00 X:4040 Y:0008  
$C2/97FF A6 C2       LDX $C2    [$00:00C2]   A:4040 X:4040 Y:0008  
$C2/9801 9F 0E 00 40 STA $40000E,x[$40:248E] A:4040 X:2480 Y:0008  
$C2/9805 A5 E6       LDA $E6    [$00:00E6]   A:4040 X:2480 Y:0008  
$C2/9807 9F 32 00 40 STA $400032,x[$40:24B2] A:0057 X:2480 Y:0008  
$C2/980B A5 E8       LDA $E8    [$00:00E8]   A:0057 X:2480 Y:0008  
$C2/980D 9F 36 00 40 STA $400036,x[$40:24B6] A:00AF X:2480 Y:0008  
$C2/9811 A5 EA       LDA $EA    [$00:00EA]   A:00AF X:2480 Y:0008  
$C2/9813 9F 3A 00 40 STA $40003A,x[$40:24BA] A:0000 X:2480 Y:0008  
$C2/9817 A9 00 00    LDA #$0000              A:0000 X:2480 Y:0008  
$C2/981A 9F 30 00 40 STA $400030,x[$40:24B0] A:0000 X:2480 Y:0008  
$C2/981E 9F 34 00 40 STA $400034,x[$40:24B4] A:0000 X:2480 Y:0008  
$C2/9822 9F 38 00 40 STA $400038,x[$40:24B8] A:0000 X:2480 Y:0008  
$C2/9826 A9 00 80    LDA #$8000              A:0000 X:2480 Y:0008  
$C2/9829 9F 40 00 40 STA $400040,x[$40:24C0] A:8000 X:2480 Y:0008  
$C2/982D 9F 42 00 40 STA $400042,x[$40:24C2] A:8000 X:2480 Y:0008  
$C2/9831 9F 44 00 40 STA $400044,x[$40:24C4] A:8000 X:2480 Y:0008  
$C2/9835 A6 C0       LDX $C0    [$00:00C0]   A:8000 X:2480 Y:0008  
$C2/9837 60          RTS                     A:8000 X:FA80 Y:0008  

...from C2/96A2 JSR...
C2/9838 08          PHP                     A:8000 X:FA80 Y:0008 
C2/9839 C2 30       REP #$30                A:8000 X:FA80 Y:0008 
C2/983B A2 00 00    LDX #$0000              A:8000 X:FA80 Y:0008 
C2/983E BF 00 3D 40 LDA $403D00,x[$40:3D00] A:8000 X:0000 Y:0008 
C2/9842 F0 04       BEQ $04    [$9848]      A:FC00 X:0000 Y:0008 
C2/9844 E8          INX                     A:FC00 X:0000 Y:0008 
C2/9845 E8          INX                     A:FC00 X:0001 Y:0008 
C2/9846 80 F6       BRA $F6    [$983E]      A:FC00 X:0002 Y:0008 
C2/983E BF 00 3D 40 LDA $403D00,x[$40:3D02] A:FC00 X:0002 Y:0008 
C2/9842 F0 04       BEQ $04    [$9848]      A:0000 X:0002 Y:0008 
C2/9848 A5 C0       LDA $C0    [$00:00C0]   A:0000 X:0002 Y:0008 
C2/984A 9F 00 3D 40 STA $403D00,x[$40:3D02] A:FA80 X:0002 Y:0008 
C2/984E A9 00 00    LDA #$0000              A:FA80 X:0002 Y:0008 
C2/9851 9F 02 3D 40 STA $403D02,x[$40:3D04] A:0000 X:0002 Y:0008 
C2/9855 28          PLP                     A:0000 X:0002 Y:0008 
C2/9856 60          RTS                     A:0000 X:0002 Y:0008 

???
C2/96A2 20 38 98    JSR $9838  [$C2:9838]   A:8000 X:FA80 Y:0008  
C2/96A5 A5 B2       LDA $B2    [$00:00B2]   A:0000 X:0002 Y:0008  
C2/96A7 3A          DEC A                   A:0000 X:0002 Y:0008  
C2/96A8 85 B2       STA $B2    [$00:00B2]   A:FFFF X:0002 Y:0008  
C2/96AA 10 9B       BPL $9B    [$9647]      A:FFFF X:0002 Y:0008  
C2/96AC 60          RTS                     A:FFFF X:0002 Y:0008  

???
$C2/9838 08          PHP                     A:8000 X:FA80 Y:0008  
$C2/9839 C2 30       REP #$30                A:8000 X:FA80 Y:0008  
$C2/983B A2 00 00    LDX #$0000              A:8000 X:FA80 Y:0008  
$C2/983E BF 00 3D 40 LDA $403D00,x[$40:3D00] A:8000 X:0000 Y:0008  
$C2/9842 F0 04       BEQ $04    [$9848]      A:FC00 X:0000 Y:0008  
$C2/9844 E8          INX                     A:FC00 X:0000 Y:0008  
$C2/9845 E8          INX                     A:FC00 X:0001 Y:0008  
$C2/9846 80 F6       BRA $F6    [$983E]      A:FC00 X:0002 Y:0008  
$C2/983E BF 00 3D 40 LDA $403D00,x[$40:3D02] A:FC00 X:0002 Y:0008  
$C2/9842 F0 04       BEQ $04    [$9848]      A:0000 X:0002 Y:0008  
$C2/9848 A5 C0       LDA $C0    [$00:00C0]   A:0000 X:0002 Y:0008  
$C2/984A 9F 00 3D 40 STA $403D00,x[$40:3D02] A:FA80 X:0002 Y:0008  
$C2/984E A9 00 00    LDA #$0000              A:FA80 X:0002 Y:0008  
$C2/9851 9F 02 3D 40 STA $403D02,x[$40:3D04] A:0000 X:0002 Y:0008  
$C2/9855 28          PLP                     A:0000 X:0002 Y:0008
$C2/9856 60          RTS                     A:0000 X:0002 Y:0008
=================================================================
Speed Calculation (Turn order)
C2/98B2 A2 00 00    LDX #$0000              A:0000 X:0002 Y:0008
C2/98B5 86 E0       STX $E0    [$00:00E0]   A:0000 X:0000 Y:0008
C2/98B7 BF 00 3D 40 LDA $403D00,x[$40:3D00] A:0000 X:0000 Y:0008
C2/98BB F0 3B       BEQ $3B    [$98F8]      A:FC00 X:0000 Y:0008
C2/98BD 85 E2       STA $E2    [$00:00E2]   A:FC00 X:0000 Y:0008
C2/98BF E8          INX                     A:FC00 X:0000 Y:0008
C2/98C0 E8          INX                     A:FC00 X:0001 Y:0008
C2/98C1 86 E8       STX $E8    [$00:00E8]   A:FC00 X:0002 Y:0008
C2/98C3 BF 00 3D 40 LDA $403D00,x[$40:3D02] A:FC00 X:0002 Y:0008
C2/98C7 F0 29       BEQ $29    [$98F2]      A:FA80 X:0002 Y:0008
C2/98C9 85 EA       STA $EA    [$00:00EA]   A:FA80 X:0002 Y:0008
C2/98CB AA          TAX                     A:FA80 X:0002 Y:0008
C2/98CC BF 70 00 7E LDA $7E0070,x[$7E:FAF0] A:FA80 X:FA80 Y:0008
C2/98D0 A6 E2       LDX $E2    [$00:00E2]   A:001E X:FA80 Y:0008
C2/98D2 DF 70 00 7E CMP $7E0070,x[$7E:FC70] A:001E X:FC00 Y:0008
C2/98D6 F0 14       BEQ $14    [$98EC]      A:001E X:FC00 Y:0008
C2/98D8 30 12       BMI $12    [$98EC]      A:001E X:FC00 Y:0008
C2/98DA A6 E8       LDX $E8    [$00:00E8]   A:001E X:FC00 Y:0008
C2/98DC A5 E2       LDA $E2    [$00:00E2]   A:001E X:0002 Y:0008
C2/98DE 9F 00 3D 40 STA $403D00,x[$40:3D02] A:FC00 X:0002 Y:0008
C2/98E2 A6 E0       LDX $E0    [$00:00E0]   A:FC00 X:0002 Y:0008
C2/98E4 A5 EA       LDA $EA    [$00:00EA]   A:FC00 X:0000 Y:0008
C2/98E6 9F 00 3D 40 STA $403D00,x[$40:3D00] A:FA80 X:0000 Y:0008
C2/98EA 85 E2       STA $E2    [$00:00E2]   A:FA80 X:0000 Y:0008
C2/98EC A6 E8       LDX $E8    [$00:00E8]   A:FA80 X:0000 Y:0008
C2/98EE E8          INX                     A:FA80 X:0002 Y:0008
C2/98EF E8          INX                     A:FA80 X:0003 Y:0008
C2/98F0 80 CF       BRA $CF    [$98C1]      A:FA80 X:0004 Y:0008

C2/98F2 A6 E0       LDX $E0    [$00:00E0]   A:0000 X:0006 Y:0006
C2/98F4 E8          INX                     A:0000 X:0004 Y:0006
C2/98F5 E8          INX                     A:0000 X:0005 Y:0006
C2/98F6 80 BD       BRA $BD    [$98B5]      A:0000 X:0006 Y:0006
C2/98B5 86 E0       STX $E0    [$00:00E0]   A:0000 X:0006 Y:0006 
C2/98B7 BF 00 3D 40 LDA $403D00,x[$40:3D06] A:0000 X:0006 Y:0006 
C2/98BB F0 3B       BEQ $3B    [$98F8]      A:0000 X:0006 Y:0006
C2/98F8 60          RTS                     A:0000 X:0006 Y:0006
=================================================================

C2/9907 
C2/990F A2 00 F8 ;loads the stats at the beginning of a new file


=================================================================
...
C2/994A AF 29 00 FA ; ??? loads bank (total is 180 bytes)
...
C2/99A3 A2 64 F8	;load equipment inventory
...
C2/99B0 AF 29 00 FA ; ??? loads bank (total is 180 bytes)
...
=================================================================
Set Battle Music
DISASSEMBLER NOTE: The music is chosen from a unique track list based on bits set.
if following bits set...
 bit 0,1   can't run
 bit 2     boss music 1
 bit 2,3   Smithy 1
 bit 2,3,4 Culex
 bit 2,4   Booster Hill
 bit 3     boss music 2
 bit 3,4   Barrel Volcano
 bit 4     minecart ride
 bit 5     ----
 bit 6,7   current music (no change)
...
C2/9EBA AF 1E FA 7E	;load byte to set Music (also, "Can't Run" bit but it's not counted here)
...
C2/9F01 AF 1E FA 7E	;load byte to set Music (also, "Can't Run" bit but it's not counted here)
Battle Music Track Unique List
C2/9F51
=================================================================
Targetting
C2/9F90 8D 00 1D    STA $1D00  [$00:1D00]   A:0100 X:2180 Y:0008
C2/9F93 A9 80 00    LDA #$0080              A:0100 X:2180 Y:0008
C2/9F96 8D 02 1D    STA $1D02  [$00:1D02]   A:0080 X:2180 Y:0008
C2/9F99 22 00 00 C4 JSL $C40000[$C4:0000]   A:0080 X:2180 Y:0008
C2/9F9D 60          RTS                     A:0080 X:2180 Y:0008

=================================================================
processor data
C2/A000 4C 3F A0    JMP $A03F  [$C0:A03F]   ;enter battle
C2/A003 4C 54 A0    JMP $A054  [$C0:A054]   ;MONSTER: Load Battle Script
C2/A006 4C 69 A0    JMP $A069  [$C0:A069]   ;MONSTER: Turn start
C2/A009 4C 7E A0    JMP $A07E  [$C0:A07E]   ;turn end
C2/A00C 4C 7E A0    JMP $A07E  [$C0:A07E]   ;turn end
C2/A00F 4C 7E A0    JMP $A07E  [$C0:A07E]   ;turn end
C2/A012 4C 93 A0    JMP $A093  [$C0:A093]   ;load weapon/spell/item type and attributes
C2/A015 4C B6 A0    JMP $A0B6  [$C0:A0B6]   ;load turn procedure
C2/A018 4C CB A0    JMP $A0CB  [$C0:A0CB]   ;load timing for weapons/defense/spells
C2/A01B 4C E8 A0    JMP $A0E8  [$C0:A0E8]   ;load statuses before battle
C2/A01E 4C FD A0    JMP $A0FD  [$C0:A0FD]   
C2/A021 4C 12 A1    JMP $A112  [$C0:A112]   ;Battle End
C2/A024 4C 27 A1    JMP $A127  [$C0:A127]   ;randomized attack? *confuse
C2/A027 4C 3C A1    JMP $A13C  [$C0:A13C]   
C2/A02A 4C 51 A1    JMP $A151  [$C0:A151]   
C2/A02D 4C 67 A1    JMP $A167  [$C0:A167]   

C2/A030	54 E6 C2 67 F9 C2		    ;??? used several times

C2/A036 4C 7C A1    JMP $A17C  [$C0:A17C]  
C2/A039 4C 9F A1    JMP $A19F  [$C0:A19F]  
C2/A03C 4C D7 A1    JMP $A1D7  [$C0:A1D7]  


C2/A03F 08          PHP                     A:0000 X:0002 Y:0008
C2/A040 8B          PHB                     A:0000 X:0002 Y:0008
C2/A041 0B          PHD                     A:0000 X:0002 Y:0008
C2/A042 C2 30       REP #$30                A:0000 X:0002 Y:0008
C2/A044 A9 00 00    LDA #$0000              A:0000 X:0002 Y:0008
C2/A047 5B          TCD                     A:0000 X:0002 Y:0008
C2/A048 48          PHA                     A:0000 X:0002 Y:0008
C2/A049 AB          PLB                     A:0000 X:0002 Y:0008
C2/A04A AB          PLB                     A:0000 X:0002 Y:0008
C2/A04B 86 54       STX $54    [$00:0054]   A:0000 X:0002 Y:0008
C2/A04D 20 BD A2    JSR $A2BD  [$C2:A2BD]   A:0000 X:0002 Y:0008
C2/A050 2B          PLD                     A:0000 X:0002 Y:0008
C2/A051 AB          PLB                     A:0000 X:0002 Y:0008 
C2/A052 28          PLP                     A:0000 X:0002 Y:0008 
C2/A053 6B          RTL                     A:0000 X:0002 Y:0008 

C2/A054 08          PHP                     A:0000 X:FC00 Y:1312
C2/A055 8B          PHB                     A:0000 X:FC00 Y:1312
C2/A056 0B          PHD                     A:0000 X:FC00 Y:1312
C2/A057 C2 30       REP #$30                A:0000 X:FC00 Y:1312
C2/A059 A9 00 00    LDA #$0000              A:0000 X:FC00 Y:1312
C2/A05C 5B          TCD                     A:0000 X:FC00 Y:1312
C2/A05D 48          PHA                     A:0000 X:FC00 Y:1312
C2/A05E AB          PLB                     A:0000 X:FC00 Y:1312
C2/A05F AB          PLB                     A:0000 X:FC00 Y:1312
C2/A060 86 54       STX $54    [$00:0054]   A:0000 X:FC00 Y:1312
C2/A062 20 E4 A2    JSR $A2E4  [$C2:A2E4]   A:0000 X:FC00 Y:1312 ;MONSTER BSC: load monster battle script
C2/A065 2B          PLD                     A:FFFF X:FC00 Y:000C
C2/A066 AB          PLB                     A:FFFF X:FC00 Y:000C
C2/A067 28          PLP                     A:FFFF X:FC00 Y:000C
C2/A068 6B          RTL                     A:FFFF X:FC00 Y:000C

MONSTER: Turn start
C2/A069 08          PHP                     A:FA80 X:FC00 Y:2400 P:eNvmxdIzc
C2/A06A 8B          PHB                     A:FA80 X:FC00 Y:2400 P:eNvmxdIzc
C2/A06B 0B          PHD                     A:FA80 X:FC00 Y:2400 P:eNvmxdIzc
C2/A06C C2 30       REP #$30                A:FA80 X:FC00 Y:2400 P:eNvmxdIzc
C2/A06E A9 00 00    LDA #$0000              A:FA80 X:FC00 Y:2400 P:eNvmxdIzc
C2/A071 5B          TCD                     A:0000 X:FC00 Y:2400 P:envmxdIZc
C2/A072 48          PHA                     A:0000 X:FC00 Y:2400 P:envmxdIZc
C2/A073 AB          PLB                     A:0000 X:FC00 Y:2400 P:envmxdIZc
C2/A074 AB          PLB                     A:0000 X:FC00 Y:2400 P:envmxdIZc
C2/A075 86 54       STX $54    [$00:0054]   A:0000 X:FC00 Y:2400 P:envmxdIZc
C2/A077 20 42 A3    JSR $A342  [$C2:A342]   A:0000 X:FC00 Y:2400 ;MONSTER BSC: Battle Script Functions (starting from $A077)
C2/A07A 2B          PLD                     A:0008 X:FC00 Y:0008 P:envmxdIzC
C2/A07B AB          PLB                     A:0008 X:FC00 Y:0008 P:envmxdIZC
C2/A07C 28          PLP                     A:0008 X:FC00 Y:0008 P:envmxdIZC
C2/A07D 6B          RTL                     A:0008 X:FC00 Y:0008 P:eNvmxdIZc


ATTACKS: load weapon/spell/item type and attributes
C2/A093 08          PHP                     A:0004 X:0004 Y:2480 P:envmxdIzc
C2/A094 8B          PHB                     A:0004 X:0004 Y:2480 P:envmxdIzc
C2/A095 0B          PHD                     A:0004 X:0004 Y:2480 P:envmxdIzc
C2/A096 C2 30       REP #$30                A:0004 X:0004 Y:2480 P:envmxdIzc
C2/A098 A9 00 00    LDA #$0000              A:0004 X:0004 Y:2480 P:envmxdIzc
C2/A09B 5B          TCD                     A:0000 X:0004 Y:2480 P:envmxdIZc
C2/A09C 48          PHA                     A:0000 X:0004 Y:2480 P:envmxdIZc
C2/A09D AB          PLB                     A:0000 X:0004 Y:2480 P:envmxdIZc
C2/A09E AB          PLB                     A:0000 X:0004 Y:2480 P:envmxdIZc
C2/A09F AD 2A 07    LDA $072A  [$00:072A]   A:0000 X:0004 Y:2480 P:envmxdIZc
C2/A0A2 0A          ASL A                   A:0002 X:0004 Y:2480 P:envmxdIzc
C2/A0A3 AA          TAX                     A:0004 X:0004 Y:2480
C2/A0A4 FC AB A0

C2/A0A7 2B          PLD                     A:0000 X:0000 Y:0732
C2/A0A8 AB          PLB                     A:0000 X:0000 Y:0732
C2/A0A9 28          PLP                     A:0000 X:0000 Y:0732
C2/A0AA 6B          RTL                     A:0000 X:0000 Y:0732

C2/A0AB B5 A0	;... (jumps to RTS)
C2/A0AD	B5 A0	;... (jumps to RTS)
C2/A0AF CA BC	;Weapons [$BCCA]
C2/A0B1 E6 BC	;Spells [$BCE6]
C2/A0B3 1D BD	;Items [$BD1D]
C2/A0B5 60

Ally: Turn Start
... from C2/A015 ...(JMP $A0B6)
C2/A0B6 08          PHP                     A:FA80 X:FA80 Y:2480
C2/A0B7 8B          PHB                     A:FA80 X:FA80 Y:2480
C2/A0B8 0B          PHD                     A:FA80 X:FA80 Y:2480
C2/A0B9 C2 30       REP #$30                A:FA80 X:FA80 Y:2480
C2/A0BB A9 00 00    LDA #$0000              A:FA80 X:FA80 Y:2480
C2/A0BE 5B          TCD                     A:0000 X:FA80 Y:2480
C2/A0BF 48          PHA                     A:0000 X:FA80 Y:2480
C2/A0C0 AB          PLB                     A:0000 X:FA80 Y:2480
C2/A0C1 AB          PLB                     A:0000 X:FA80 Y:2480
C2/A0C2 86 54       STX $54    [$00:0054]   A:0000 X:FA80 Y:2480
C2/A0C4 20 79 C7    JSR $C779  [$C2:C779]   A:0000 X:FA80 Y:2480 ;check status ailments
C2/A0C7 2B          PLD                     A:8080 X:FA80 Y:2480 
C2/A0C8 AB          PLB                     A:8080 X:FA80 Y:2480 
C2/A0C9 28          PLP                     A:8080 X:FA80 Y:2480
C2/A0CA 6B          RTL                     A:8080 X:FA80 Y:2480 ;end (jumps back to $1FCA)


load timing for weapons/defense/spells
C2/A0CB 08          PHP                     A:0194 X:0002 Y:FF0F
C2/A0CC 8B          PHB                     A:0194 X:0002 Y:FF0F
C2/A0CD 0B          PHD                     A:0194 X:0002 Y:FF0F
C2/A0CE C2 30       REP #$30                A:0194 X:0002 Y:FF0F
C2/A0D0 A9 00 00    LDA #$0000              A:0194 X:0002 Y:FF0F
C2/A0D3 5B          TCD                     A:0000 X:0002 Y:FF0F
C2/A0D4 48          PHA                     A:0000 X:0002 Y:FF0F
C2/A0D5 AB          PLB                     A:0000 X:0002 Y:FF0F
C2/A0D6 AB          PLB                     A:0000 X:0002 Y:FF0F

C2/A0DE 94 C8	;ALLY: Timed-hit Calculation
	3E C9	;ALLY: Timing for Physical Defense
	C6 CA	;Additional timing effects for all ally spells
	53 D0	;SPELLS: Damage calculations for all spells
	D8 D1	;SPELLS: Targetting table

C2/A0DA 2B          PLD                     A:0000 X:0002 Y:FF0F
C2/A0DB AB          PLB                     A:0000 X:0002 Y:FF0F
C2/A0DC 28          PLP                     A:0000 X:0002 Y:FF0F
C2/A0DD 6B          RTL                     A:0000 X:0002 Y:FF0F

load statuses before battle
C2/A0E8 08          PHP                     A:1808 X:FA80 Y:1313
C2/A0E9 8B          PHB                     A:1808 X:FA80 Y:1313
C2/A0EA 0B          PHD                     A:1808 X:FA80 Y:1313
C2/A0EB C2 30       REP #$30                A:1808 X:FA80 Y:1313 
C2/A0ED A9 00 00    LDA #$0000              A:1808 X:FA80 Y:1313 
C2/A0F0 5B          TCD                     A:0000 X:FA80 Y:1313
C2/A0F1 48          PHA                     A:0000 X:FA80 Y:1313
C2/A0F2 AB          PLB                     A:0000 X:FA80 Y:1313
C2/A0F3 AB          PLB                     A:0000 X:FA80 Y:1313
C2/A0F4 86 54       STX $54    [$00:0054]   A:0000 X:FA80 Y:1313
C2/A0F6 20 4C B9    JSR $B94C  [$C2:B94C]   A:0000 X:FA80 Y:1313 ;Loads equip stats before battle
C2/A0F9 2B          PLD                     A:00FF X:FA80 Y:0010
C2/A0FA AB          PLB                     A:00FF X:FA80 Y:0010 
C2/A0FB 28          PLP                     A:00FF X:FA80 Y:0010
C2/A0FC 6B          RTL                     A:00FF X:FA80 Y:0010 

Battle End
C2/A112 08          PHP                     A:0000 X:0060 Y:2480
C2/A113 8B          PHB                     A:0000 X:0060 Y:2480
C2/A114 0B          PHD                     A:0000 X:0060 Y:2480
C2/A115 C2 30       REP #$30                A:0000 X:0060 Y:2480
C2/A117 A9 00 00    LDA #$0000              A:0000 X:0060 Y:2480
C2/A11A 5B          TCD                     A:0000 X:0060 Y:2480
C2/A11B 48          PHA                     A:0000 X:0060 Y:2480
C2/A11C AB          PLB                     A:0000 X:0060 Y:2480
C2/A11D AB          PLB                     A:0000 X:0060 Y:2480
C2/A11E 86 54       STX $54    [$00:0054]   A:0000 X:0060 Y:2480
C2/A120 20 76 DC    JSR $DC76  [$C2:DC76]   A:0000 X:0060 Y:2480 ;Battle End
C2/A123 2B          PLD                     A:0000 X:0000 Y:0000
C2/A124 AB          PLB                     A:0000 X:0000 Y:0000
C2/A125 28          PLP                     A:0000 X:0000 Y:0000
C2/A126 6B          RTL                     A:0000 X:0000 Y:0000

randomized attack? *confuse
C2/A127 08          PHP                     A:FA80 X:2480 Y:2480
C2/A128 8B          PHB                     A:FA80 X:2480 Y:2480
C2/A129 0B          PHD                     A:FA80 X:2480 Y:2480
C2/A12A C2 30       REP #$30                A:FA80 X:2480 Y:2480
C2/A12C A9 00 00    LDA #$0000              A:FA80 X:2480 Y:2480
C2/A12F 5B          TCD                     A:0000 X:2480 Y:2480
C2/A130 48          PHA                     A:0000 X:2480 Y:2480
C2/A131 AB          PLB                     A:0000 X:2480 Y:2480
C2/A132 AB          PLB                     A:0000 X:2480 Y:2480
C2/A133 86 54       STX $54    [$00:0054]   A:0000 X:2480 Y:2480
C2/A135 20 25 AD    JSR $AD25  [$C2:AD25]   A:0000 X:2480 Y:2480 ;ALLY/MONSTER: *Confuse
C2/A138 2B          PLD                     A:FC00 X:0008 Y:2400
C2/A139 AB          PLB                     A:FC00 X:0008 Y:2400
C2/A13A 28          PLP                     A:FC00 X:0008 Y:2400
C2/A13B 6B          RTL                     A:FC00 X:0008 Y:2400

=================================================================
Battle loader
C2/A2BD A9 00 00    LDA #$0000              A:0000 X:0002 Y:0008
C2/A2C0 8D 24 07    STA $0724  [$00:0724]   A:0000 X:0002 Y:0008
C2/A2C3 8F 00 E0 7E STA $7EE000[$7E:E000]   A:0000 X:0002 Y:0008 
C2/A2C7 8F 02 E0 7E STA $7EE002[$7E:E002]   A:0000 X:0002 Y:0008 
C2/A2CB 8F 04 E0 7E STA $7EE004[$7E:E004]   A:0000 X:0002 Y:0008 
C2/A2CF 8F 06 E0 7E STA $7EE006[$7E:E006]   A:0000 X:0002 Y:0008 
C2/A2D3 8F 08 E0 7E STA $7EE008[$7E:E008]   A:0000 X:0002 Y:0008 
C2/A2D7 8F 0A E0 7E STA $7EE00A[$7E:E00A]   A:0000 X:0002 Y:0008 
C2/A2DB 8F 0C E0 7E STA $7EE00C[$7E:E00C]   A:0000 X:0002 Y:0008 
C2/A2DF 8F 0E E0 7E STA $7EE00E[$7E:E00E]   A:0000 X:0002 Y:0008 
C2/A2E3 60          RTS                     A:0000 X:0002 Y:0008 
=================================================================
MONSTER: Load stats
C2/A2E4 AF 10 00 F9 LDA $F90010[$F9:0010]   A:0000 X:FC00 Y:1312 ;Load battle scripts
C2/A2E8 85 A0       STA $A0    [$00:00A0]   A:30AA X:FC00 Y:1312
C2/A2EA A9 F9 00    LDA #$00F9              A:30AA X:FC00 Y:1312
C2/A2ED 85 A2       STA $A2    [$00:00A2]   A:00F9 X:FC00 Y:1312
C2/A2EF BF 01 00 7E LDA $7E0001,x[$7E:FC01] A:00F9 X:FC00 Y:1312 ;load monster ID #
C2/A2F3 29 FF 00    AND #$00FF              A:0001 X:FC00 Y:1312 ;isolate
C2/A2F6 0A          ASL A                   A:0001 X:FC00 Y:1312
C2/A2F7 A8          TAY                     A:0002 X:FC00 Y:1312
C2/A2F8 B7 A0       LDA [$A0],y[$F9:30AC]   A:0002 X:FC00 Y:0002
C2/A2FA 85 A0       STA $A0    [$00:00A0]   A:32B0 X:FC00 Y:0002
C2/A2FC A0 FF FF    LDY #$FFFF              A:32B0 X:FC00 Y:0002
C2/A2FF C8          INY                     A:32B0 X:FC00 Y:FFFF
C2/A300 B7 A0       LDA [$A0],y[$F9:32B0]   A:32B0 X:FC00 Y:0000
C2/A302 29 FF 00    AND #$00FF              A:EFFD X:FC00 Y:0000
C2/A305 C9 FF 00    CMP #$00FF              A:00FD X:FC00 Y:0000
C2/A308 D0 F5       BNE $F5    [$A2FF]      A:00FD X:FC00 Y:0000

C2/A30A C8          INY                     A:00FF X:FC00 Y:000B
C2/A30B 98          TYA                     A:00FF X:FC00 Y:000C
C2/A30C 18          CLC                     A:000C X:FC00 Y:000C
C2/A30D 65 A0       ADC $A0    [$00:00A0]   A:000C X:FC00 Y:000C
C2/A30F A6 54       LDX $54    [$00:0054]   A:32BC X:FC00 Y:000C
C2/A311 9F 54 00 7E STA $7E0054,x[$7E:FC54] A:32BC X:FC00 Y:000C
C2/A315 A5 A0       LDA $A0    [$00:00A0]   A:32BC X:FC00 Y:000C
C2/A317 9F 50 00 7E STA $7E0050,x[$7E:FC50] A:32B0 X:FC00 Y:000C
C2/A31B A9 00 00    LDA #$0000              A:32B0 X:FC00 Y:000C
C2/A31E 9F 52 00 7E STA $7E0052,x[$7E:FC52] A:0000 X:FC00 Y:000C
C2/A322 9F 56 00 7E STA $7E0056,x[$7E:FC56] A:0000 X:FC00 Y:000C
C2/A326 9F 60 00 7E STA $7E0060,x[$7E:FC60] A:0000 X:FC00 Y:000C
C2/A32A 9F 62 00 7E STA $7E0062,x[$7E:FC62] A:0000 X:FC00 Y:000C
C2/A32E 9F 64 00 7E STA $7E0064,x[$7E:FC64] A:0000 X:FC00 Y:000C
C2/A332 9F 6A 00 7E STA $7E006A,x[$7E:FC6A] A:0000 X:FC00 Y:000C
C2/A336 A9 FF FF    LDA #$FFFF              A:0000 X:FC00 Y:000C
C2/A339 9F 66 00 7E STA $7E0066,x[$7E:FC66] A:FFFF X:FC00 Y:000C
C2/A33D 9F 68 00 7E STA $7E0068,x[$7E:FC68] A:FFFF X:FC00 Y:000C
C2/A341 60          RTS                     A:FFFF X:FC00 Y:000C

=================================================================
MONSTER BSC: Battle Script Functions (starting from $A077)
C2/A342 9C 28 07    STZ $0728  [$00:0728]   A:0000 X:FC00 Y:2400
C2/A345 BF 50 00 7E LDA $7E0050,x[$7E:FC50] A:0000 X:FC00 Y:2400
C2/A349 85 50       STA $50    [$00:0050]   A:32B0 X:FC00 Y:2400
C2/A34B E2 20       SEP #$20                A:32B0 X:FC00 Y:2400
C2/A34D A9 F9       LDA #$F9                A:32B0 X:FC00 Y:2400
C2/A34F 85 52       STA $52    [$00:0052]   A:32F9 X:FC00 Y:2400
C2/A351 C2 20       REP #$20                A:32F9 X:FC00 Y:2400
C2/A353 BF 52 00 7E LDA $7E0052,x[$7E:FC52] A:32F9 X:FC00 Y:2400
C2/A357 A8          TAY                     A:0003 X:FC00 Y:2400
C2/A358 80 29       BRA $29    [$A383]      A:0003 X:FC00 Y:0003

C2/A383 A9 00 00    LDA #$0000              A:0003 X:FC00 Y:0003
C2/A386 8D 2A 07    STA $072A  [$00:072A]   A:0000 X:FC00 Y:0003
C2/A389 8D 30 07    STA $0730  [$00:0730]   A:0000 X:FC00 Y:0003
C2/A38C B7 50       LDA [$50],y[$F9:32B3]   A:0000 X:FC00 Y:0003
C2/A38E 29 FF 00    AND #$00FF              A:E0FD X:FC00 Y:0003
C2/A391 C9 E0 00    CMP #$00E0              A:00FD X:FC00 Y:0003
C2/A394 10 03       BPL $03    [$A399]      A:00FD X:FC00 Y:0003

C2/A396 4C 06 A4    JMP $A406  [$C2:A406]   A:0003 X:FC00 Y:0009 ;MONSTER BSC: Cast Attack (Do 1 Attack) (Cast Start)

C2/A399 38          SEC                     A:00FD X:FC00 Y:0003
C2/A39A E9 E0 00    SBC #$00E0              A:00FD X:FC00 Y:0003
C2/A39D 0A          ASL A                   A:001D X:FC00 Y:0003
C2/A39E AA          TAX                     A:003A X:FC00 Y:0003
C2/A39F 7C C3 A3    JMP ($A3C3,x)[$C2:A897] A:003A X:003A Y:0003

	2C A4	;MONSTER BSC: Cast Attack (1 of 3 possible attacks) (Cast Start)
	64 A4
	A0 A4	;??? random attack?
	AD A4
	C4 A4
	E2 A4
	F9 A4
	45 A5
	9A A5
	D3 A5
	DF A5	; Call monster?
	54 A6
	9B A6
	A9 A6
	BA A6
	BD A6	;MONSTER BSC: Cast Spell (Cast start)
	EE A6
	30 A7
	43 A7
	8B A7
	B9 A7
	03 A4
	03 A4
	03 A4
	03 A4
	03 A4
	03 A4
	03 A4
	1C A8
	97 A8	;MONSTER BSC: Wait 1 Turn (from battle script)
	A8 A8
	D3 A8

...
C2/A3A2 A9 00 00    LDA #$0000              A:0003 X:0000 Y:0003
C2/A3A5 80 03       BRA $03    [$A3AA]      A:0000 X:0000 Y:0003

C2/A3A7 A9 FF FF    LDA #$FFFF              A:00EF X:003A Y:0001

C2/A3AA 8D 26 07    STA $0726  [$00:0726]   A:FFFF X:003A Y:0001
C2/A3AD A6 54       LDX $54    [$00:0054]   A:FFFF X:003A Y:0001
C2/A3AF BF 50 00 7E LDA $7E0050,x[$7E:FC50] A:FFFF X:FC00 Y:0001
C2/A3B3 C5 50       CMP $50    [$00:0050]   A:32B0 X:FC00 Y:0001
C2/A3B5 D0 06       BNE $06    [$A3BD]      A:32B0 X:FC00 Y:0001
C2/A3B7 98          TYA                     A:32B0 X:FC00 Y:0001
C2/A3B8 9F 52 00 7E STA $7E0052,x[$7E:FC52] A:0001 X:FC00 Y:0001
C2/A3BC 60          RTS                     A:0001 X:FC00 Y:0001
=================================================================
MONSTER BSC: Cast Attacks/Spells (Cast End)
...jump from $A461...
...jump from $A6EB...
C2/A3A2 A9 00 00    LDA #$0000              A:0002 X:0000 Y:0008
C2/A3A5 80 03       BRA $03    [$A3AA]      A:0000 X:0000 Y:0008
...jump from $A8A5...
C2/A3A7 A9 FF FF    LDA #$FFFF              A:0003 X:003A Y:0009

C2/A3AA 8D 26 07    STA $0726  [$00:0726]   A:FFFF X:003A Y:0009
C2/A3AD A6 54       LDX $54    [$00:0054]   A:0000 X:0000 Y:0008
C2/A3AF BF 50 00 7E LDA $7E0050,x[$7E:FC50] A:0000 X:FC00 Y:0008
C2/A3B3 C5 50       CMP $50    [$00:0050]   A:32B0 X:FC00 Y:0008 
C2/A3B5 D0 06       BNE $06    [$A3BD]      A:32B0 X:FC00 Y:0008
C2/A3B7 98          TYA                     A:32B0 X:FC00 Y:0008 
C2/A3B8 9F 52 00 7E STA $7E0052,x[$7E:FC52] A:0008 X:FC00 Y:0008
C2/A3BC 60          RTS                     A:0008 X:FC00 Y:0008 

=================================================================

MONSTER BSC: Cast Attack (Do 1 Attack) (Cast Start)
$C2/A406 B7 50       LDA [$50],y[$F9:32B0]   A:00FD X:FC00 Y:0000 
$C2/A408 29 FF 00    AND #$00FF              A:EFFD X:FC00 Y:0000 
$C2/A40B 8D 2C 07    STA $072C  [$00:072C]   A:00FD X:FC00 Y:0000 
$C2/A40E 84 56       STY $56    [$00:0056]   A:00FD X:FC00 Y:0000 
$C2/A410 AD 30 07    LDA $0730  [$00:0730]   A:00FD X:FC00 Y:0000 
$C2/A413 D0 03       BNE $03    [$A418]      A:0000 X:FC00 Y:0000 
$C2/A415 20 96 AB    JSR $AB96  [$C2:AB96]   A:0000 X:FC00 Y:0000 ;MONSTER BSC: Cast Attack (continued)

MONSTER BSC: Cast Attack
$C2/A418 A5 54       LDA $54    [$00:0054]   A:FA80 X:0006 Y:0009
$C2/A41A 8D 50 07    STA $0750  [$00:0750]   A:FC00 X:0006 Y:0009
$C2/A41D 20 CA BC    JSR $BCCA  [$C2:BCCA]   A:FC00 X:0006 Y:0009 ;WEAPONS/SPELLS: Weapons [$BCCA]
$C2/A420 A9 02 00    LDA #$0002              A:0001 X:0000 Y:0732 ;Set command to use (02=attack)
$C2/A423 8D 2A 07    STA $072A  [$00:072A]   A:0002 X:0000 Y:0732 ;Set command to use
$C2/A426 A4 56       LDY $56    [$00:0056]   A:0002 X:0000 Y:0732 
$C2/A428 C8          INY                     A:0002 X:0000 Y:0009 
$C2/A429 4C A2 A3    JMP $A3A2  [$C2:A3A2]   A:0002 X:0000 Y:000A ;Cast Attacks/Spells (Cast End)

=================================================================
MONSTER BSC: Cast Attack (1 of 3 possible attacks) (Cast Start)
$C2/A42C C8          INY                     A:0000 X:0000 Y:0004
$C2/A42D 84 56       STY $56    [$00:0056]   A:0000 X:0000 Y:0005
$C2/A42F A9 03 00    LDA #$0003              A:0000 X:0000 Y:0005
$C2/A432 20 C6 B2    JSR $B2C6  [$C2:B2C6]   A:0003 X:0000 Y:0005 ;Random numeral calculation
$C2/A435 18          CLC                     A:0000 X:0000 Y:0005
$C2/A436 65 56       ADC $56    [$00:0056]   A:0000 X:0000 Y:0005 
$C2/A438 A8          TAY                     A:0005 X:0000 Y:0005 
$C2/A439 B7 50       LDA [$50],y[$F9:32B5]   A:0005 X:0000 Y:0005 
$C2/A43B 29 FF 00    AND #$00FF              A:1003 X:0000 Y:0005 
$C2/A43E C9 FB 00    CMP #$00FB              A:0003 X:0000 Y:0005 
$C2/A441 F0 19       BEQ $19    [$A45C]      A:0003 X:0000 Y:0005 

$C2/A443 8D 2C 07    STA $072C  [$00:072C]   A:0003 X:0000 Y:0005 
$C2/A446 AD 30 07    LDA $0730  [$00:0730]   A:0003 X:0000 Y:0005 
$C2/A449 D0 03       BNE $03    [$A44E]      A:0000 X:0000 Y:0005 
$C2/A44B 20 96 AB    JSR $AB96  [$C2:AB96]   A:0000 X:0000 Y:0005 ;MONSTER BSC: Cast Attack (continued)

C2/A44E A5 54       LDA $54    [$00:0054]   A:FA80 X:0006 Y:0005
C2/A450 8D 50 07    STA $0750  [$00:0750]   A:FC00 X:0006 Y:0005
C2/A453 20 CA BC    JSR $BCCA  [$C2:BCCA]   A:FC00 X:0006 Y:0005 ;WEAPONS/SPELLS: Weapons [$BCCA]
C2/A456 A9 02 00    LDA #$0002              A:0000 X:0000 Y:0732
C2/A459 8D 2A 07    STA $072A  [$00:072A]   A:0002 X:0000 Y:0732
C2/A45C A4 56       LDY $56    [$00:0056]   A:0002 X:0000 Y:0732
C2/A45E C8          INY                     A:0002 X:0000 Y:0005
C2/A45F C8          INY                     A:0002 X:0000 Y:0006
C2/A460 C8          INY                     A:0002 X:0000 Y:0007
C2/A461 4C A2 A3    JMP $A3A2  [$C2:A3A2]   A:0002 X:0000 Y:0008

=================================================================
??? Random Attack?
C2/A4A0 C8          INY                     A:0004 X:0004 Y:000A
C2/A4A1 B7 50       LDA [$50],y[$F9:3BBB]   A:0004 X:0004 Y:000B
C2/A4A3 29 FF 00    AND #$00FF              A:001F X:0004 Y:000B
C2/A4A6 20 D9 A8    JSR $A8D9  [$C2:A8D9]   A:001F X:0004 Y:000B
C2/A4A9 C8          INY                     A:FC80 X:0010 Y:000B
C2/A4AA 4C 8C A3    JMP $A38C  [$C2:A38C]   A:FC80 X:0010 Y:000C
=================================================================
MONSTER BSC: Set Target Invincibility
C2/A683 BF 41 00 7E LDA $7E0041,x[$7E:FCC1] A:0000 X:FC80 Y:0007 
C2/A687 09 03 00    ORA #$0003              A:0000 X:FC80 Y:0007 ;Sets Invincibility and Mortality protection
C2/A68A 80 07       BRA $07    [$A693]      A:0003 X:FC80 Y:0007

C2/A68C BF 41 00 7E LDA $7E0041,x[$7E:FCC1] A:0001 X:FC80 Y:000D
C2/A690 29 FC FF    AND #$FFFC              A:0003 X:FC80 Y:000D ;Remove Invincibility and Mortality protection

C2/A693 9F 41 00 7E STA $7E0041,x[$7E:FCC1] A:0003 X:FC80 Y:0007 

=================================================================
MONSTER BSC: Cast Spell (Cast Start)
C2/A6BD C8          INY                     A:001E X:001E Y:0001
C2/A6BE B7 50       LDA [$50],y[$F9:32B2]   A:001E X:001E Y:0002
C2/A6C0 29 FF 00    AND #$00FF              A:FD5A X:001E Y:0002 
C2/A6C3 8D 2C 07    STA $072C  [$00:072C]   A:005A X:001E Y:0002
C2/A6C6 84 56       STY $56    [$00:0056]   A:005A X:001E Y:0002
C2/A6C8 20 5E AE    JSR $AE5E  [$C2:AE5E]   A:005A X:001E Y:0002 ;MONSTER BSC: Subtract FP cost from current FP
C2/A6CB A5 A0       LDA $A0    [$00:00A0]   A:0000 X:FC00 Y:043A
C2/A6CD D0 08       BNE $08    [$A6D7]      A:0001 X:FC00 Y:043A
C2/A6D7 20 74 AD    JSR $AD74  [$C2:AD74]   A:0001 X:FC00 Y:043A
C2/A6DA A5 54       LDA $54    [$00:0054]   A:FA80 X:FFFE Y:0006
C2/A6DC 8D 50 07    STA $0750  [$00:0750]   A:FC00 X:FFFE Y:0006
C2/A6DF 20 E6 BC    JSR $BCE6  [$C2:BCE6]   A:FC00 X:FFFE Y:0006 ;SPELLS: Spells [$BCE6]
C2/A6E2 A9 03 00    LDA #$0003              A:0001 X:0000 Y:0732 ;Set command to use (03=spell)
C2/A6E5 8D 2A 07    STA $072A  [$00:072A]   A:0003 X:FC00 Y:0732 ;Set command to use
C2/A6E8 A4 56       LDY $56    [$00:0056]   A:0003 X:FC00 Y:0732 
C2/A6EA C8          INY                     A:0003 X:FC00 Y:0002 
C2/A6EB 4C A2 A3    JMP $A3A2  [$C2:A3A2]   A:0003 X:FC00 Y:0003
=================================================================
C2/A7D4 7C D7 A7
	BA AE	;MONSTER BSC: Items stolen from Croco???
	E9 AE	;MONSTER BSC: ???
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8
	17 A8

=================================================================
MONSTER BSC: Wait 1 Turn (from battle script)
C2/A897 C8          INY                     A:003A X:003A Y:0008
C2/A898 B7 50       LDA [$50],y[$F9:32B9]   A:003A X:003A Y:0009
C2/A89A 29 FF 00    AND #$00FF              A:FD03 X:003A Y:0009
C2/A89D C9 FF 00    CMP #$00FF              A:0003 X:003A Y:0009
C2/A8A0 D0 03       BNE $03    [$A8A5]      A:0003 X:003A Y:0009

C2/A8A5 4C A7 A3    JMP $A3A7  [$C2:A3A7]   A:0003 X:003A Y:0009 ;MONSTER BSC: Cast Attacks/Spells (Cast End)

=================================================================
??? Random Attack?
C2/A8D9 0A          ASL A                   A:001F X:0004 Y:000B
C2/A8DA AA          TAX                     A:003E X:0004 Y:000B
C2/A8DB 7C DE A8    JMP ($A8DE,x)[$C2:AA7E] A:003E X:003E Y:000B

C2/A93E 60          RTS                     A:FC80 X:0010 Y:000B

C2/AA7E 20 34 AC    JSR $AC34  [$C2:AC34]   A:003E X:003E Y:000B
C2/AA81 4C 3E A9    JMP $A93E  [$C2:A93E]   A:FC80 X:0010 Y:000B
=================================================================
MONSTER BSC: Cast Attack (continued)
C2/AB96 84 AE       STY $AE    [$00:00AE]   A:0000 X:FC00 Y:0009 
C2/AB98 A2 00 00    LDX #$0000              A:0000 X:FC00 Y:0009 
C2/AB9B A0 00 00    LDY #$0000              A:0000 X:0000 Y:0009 

C2/AB9E BF EA A1 C2 LDA $C2A1EA,x[$C2:A1EA] A:0000 X:0000 Y:0000 ;Load ally data
C2/ABA2 86 AC       STX $AC    [$00:00AC]   A:FA80 X:0000 Y:0000
C2/ABA4 AA          TAX                     A:FA80 X:0000 Y:0000
C2/ABA5 BF 00 00 7E LDA $7E0000,x[$7E:FA80] A:FA80 X:FA80 Y:0000 ;load mortal status
C2/ABA9 29 C0 00    AND #$00C0              A:0000 X:FA80 Y:0000 ;check mortal status
C2/ABAC D0 06       BNE $06    [$ABB4]      A:0000 X:FA80 Y:0000

C2/ABAE 8A          TXA                     A:0000 X:FA80 Y:0000
C2/ABAF 99 60 07    STA $0760,y[$00:0760]   A:FA80 X:FA80 Y:0000
C2/ABB2 C8          INY                     A:FA80 X:FA80 Y:0000
C2/ABB3 C8          INY                     A:FA80 X:FA80 Y:0001

C2/ABB4 A6 AC       LDX $AC    [$00:00AC]   A:FA80 X:FA80 Y:0002
C2/ABB6 E8          INX                     A:FA80 X:0000 Y:0002
C2/ABB7 E8          INX                     A:FA80 X:0001 Y:0002
C2/ABB8 E0 05 00    CPX #$0005              A:FA80 X:0002 Y:0002
C2/ABBB 30 E1       BMI $E1    [$AB9E]      A:FA80 X:0002 Y:0002

C2/ABBD C0 00 00    CPY #$0000              A:0080 X:0006 Y:0002
C2/ABC0 D0 06       BNE $06    [$ABC8]      A:0080 X:0006 Y:0002
C2/ABC8 98          TYA                     A:0080 X:0006 Y:0002
C2/ABC9 C9 02 00    CMP #$0002              A:0002 X:0006 Y:0002
C2/ABCC D0 05       BNE $05    [$ABD3]      A:0002 X:0006 Y:0002
C2/ABCE A0 00 00    LDY #$0000              A:0002 X:0006 Y:0002
C2/ABD1 80 06       BRA $06    [$ABD9]      A:0002 X:0006 Y:0000

C2/ABD9 B9 60 07    LDA $0760,y[$00:0760]   A:0002 X:0006 Y:0000
C2/ABDC 8D 30 07    STA $0730  [$00:0730]   A:FA80 X:0006 Y:0000
C2/ABDF 9C 32 07    STZ $0732  [$00:0732]   A:FA80 X:0006 Y:0000
C2/ABE2 A4 AE       LDY $AE    [$00:00AE]   A:FA80 X:0006 Y:0000
C2/ABE4 60          RTS                     A:FA80 X:0006 Y:0009

=================================================================
??? Random Attack?
C2/AC34 84 AE       STY $AE    [$00:00AE]   A:003E X:003E Y:000B
C2/AC36 A2 00 00    LDX #$0000              A:003E X:003E Y:000B
C2/AC39 A0 00 00    LDY #$0000              A:003E X:0000 Y:000B

C2/AC3C BF F0 A1 C2 LDA $C2A1F0,x[$C2:A1F0] A:003E X:0000 Y:0000
C2/AC40 86 AC       STX $AC    [$00:00AC]   A:FC00 X:0000 Y:0000
C2/AC42 AA          TAX                     A:FF80 X:000E Y:0004
C2/AC43 BF 00 00 7E LDA $7E0000,x[$7E:FF80] A:FF80 X:FF80 Y:0004
C2/AC47 29 C0 00    AND #$00C0              A:FF80 X:FF80 Y:0004
C2/AC4A D0 06       BNE $06    [$AC52]      A:0080 X:FF80 Y:0004
C2/AC52 A6 AC       LDX $AC    [$00:00AC]   A:0080 X:FF80 Y:0004
C2/AC54 E8          INX                     A:0080 X:000E Y:0004
C2/AC55 E8          INX                     A:0080 X:000F Y:0004
C2/AC56 E0 0F 00    CPX #$000F              A:0080 X:0010 Y:0004
C2/AC59 30 E1       BMI $E1    [$AC3C]      A:0080 X:0010 Y:0004

C2/AC5B C0 00 00    CPY #$0000              A:0080 X:0010 Y:0004
C2/AC5E D0 06       BNE $06    [$AC66]      A:0080 X:0010 Y:0004
C2/AC66 98          TYA                     A:0080 X:0010 Y:0004
C2/AC67 C9 02 00    CMP #$0002              A:0004 X:0010 Y:0004
C2/AC6A D0 05       BNE $05    [$AC71]      A:0004 X:0010 Y:0004
C2/AC71 4A          LSR A                   A:0004 X:0010 Y:0004
C2/AC72 20 C6 B2    JSR $B2C6  [$C2:B2C6]   A:0002 X:0010 Y:0004 ;Random numeral calculation
C2/AC75 0A          ASL A                   A:0001 X:0010 Y:0004 
C2/AC76 A8          TAY                     A:0002 X:0010 Y:0004
C2/AC77 B9 60 07    LDA $0760,y[$00:0762]   A:0002 X:0010 Y:0002
C2/AC7A 8D 30 07    STA $0730  [$00:0730]   A:FC80 X:0010 Y:0002
C2/AC7D 9C 32 07    STZ $0732  [$00:0732]   A:FC80 X:0010 Y:0002
C2/AC80 A4 AE       LDY $AE    [$00:00AE]   A:FC80 X:0010 Y:0002
C2/AC82 60          RTS                     A:FC80 X:0010 Y:000B
=================================================================
ALLY/MONSTER: *Confuse
C2/AD25 84 AE       STY $AE    [$00:00AE]   A:0000 X:2480 Y:2480
C2/AD27 A2 00 00    LDX #$0000              A:0000 X:2480 Y:2480
C2/AD2A A0 00 00    LDY #$0000              A:0000 X:0000 Y:2480

C2/AD2D BF EA A1 C2 LDA $C2A1EA,x[$C2:A1EA] A:0000 X:0000 Y:0000 ;sets the RAM address for all mortal characters and monsters
C2/AD31 86 AC       STX $AC    [$00:00AC]   A:FA80 X:0000 Y:0000
C2/AD33 AA          TAX                     A:FA80 X:0000 Y:0000
C2/AD34 BF 00 00 7E LDA $7E0000,x[$7E:FA80] A:FA80 X:FA80 Y:0000 ;loads mortal status
C2/AD38 29 C0 00    AND #$00C0              A:0000 X:FA80 Y:0000 ;checks mortal status
C2/AD3B D0 06       BNE $06    [$AD43]      A:0000 X:FA80 Y:0000
C2/AD3D 8A          TXA                     A:0000 X:FA80 Y:0000
C2/AD3E 99 60 07    STA $0760,y[$00:0760]   A:FA80 X:FA80 Y:0000
C2/AD41 C8          INY                     A:FA80 X:FA80 Y:0000
C2/AD42 C8          INY                     A:FA80 X:FA80 Y:0001
C2/AD43 A6 AC       LDX $AC    [$00:00AC]   A:FA80 X:FA80 Y:0002
C2/AD45 E8          INX                     A:FA80 X:0000 Y:0002
C2/AD46 E8          INX                     A:FA80 X:0001 Y:0002
C2/AD47 E0 15 00    CPX #$0015              A:FA80 X:0002 Y:0002
C2/AD4A 30 E1       BMI $E1    [$AD2D]      A:FA80 X:0002 Y:0002 ;waits until the counter set to 0 (it checks all allies + 15 monsters)

C2/AD4C C0 00 00    CPY #$0000              A:0080 X:0016 Y:0004
C2/AD4F D0 06       BNE $06    [$AD57]      A:0080 X:0016 Y:0004
C2/AD57 98          TYA                     A:0080 X:0016 Y:0004
C2/AD58 C9 02 00    CMP #$0002              A:0004 X:0016 Y:0004
C2/AD5B D0 05       BNE $05    [$AD62]      A:0004 X:0016 Y:0004
C2/AD62 4A          LSR A                   A:0004 X:0016 Y:0004
C2/AD63 20 C6 B2    JSR $B2C6  [$C2:B2C6]   A:0002 X:0016 Y:0004 ;random number calculation
C2/AD66 0A          ASL A                   A:0000 X:0016 Y:0004
C2/AD67 A8          TAY                     A:0000 X:0016 Y:0004
C2/AD68 B9 60 07    LDA $0760,y[$00:0760]   A:0000 X:0016 Y:0000
C2/AD6B 8D 30 07    STA $0730  [$00:0730]   A:FA80 X:0016 Y:0000 ;current battle target
C2/AD6E 9C 32 07    STZ $0732  [$00:0732]   A:FA80 X:0016 Y:0000
C2/AD71 A4 AE       LDY $AE    [$00:00AE]   A:FA80 X:0016 Y:0000
C2/AD73 60          RTS                     A:FA80 X:0016 Y:2480

=================================================================
MONSTER BSC: Spells
C2/AD74 A5 A4       LDA $A4    [$00:00A4]   A:0001 X:FC00 Y:043A P:envmxdIzC
C2/AD76 29 18 00    AND #$0018              A:0054 X:FC00 Y:043A P:envmxdIzC
C2/AD79 4A          LSR A                   A:0010 X:FC00 Y:043A P:envmxdIzC
C2/AD7A 4A          LSR A                   A:0008 X:FC00 Y:043A P:envmxdIzc
C2/AD7B AA          TAX                     A:0004 X:FC00 Y:043A P:envmxdIzc
C2/AD7C FC E8 AD    JSR ($ADE8,x)[$C2:AE3D] A:0004 X:0004 Y:043A P:envmxdIzc

C2/AD7F A9 00 00    LDA #$0000              A:00C2 X:0004 Y:043A P:envmxdIzc
C2/AD82 85 AC       STA $AC    [$00:00AC]   A:0000 X:0004 Y:043A P:envmxdIZc
C2/AD84 85 AE       STA $AE    [$00:00AE]   A:0000 X:0004 Y:043A P:envmxdIZc
C2/AD86 A8          TAY                     A:0000 X:0004 Y:043A P:envmxdIZc

C2/AD87 B7 A6       LDA [$A6],y[$C2:A1EA]   A:0000 X:0004 Y:0000 P:envmxdIZc
C2/AD89 AA          TAX                     A:FA80 X:0004 Y:0000 P:eNvmxdIzc
C2/AD8A A5 A4       LDA $A4    [$00:00A4]   A:FA80 X:FA80 Y:0000 P:eNvmxdIzc
C2/AD8C 89 20 00    BIT #$0020              A:0054 X:FA80 Y:0000 P:envmxdIzc
C2/AD8F D0 0B       BNE $0B    [$AD9C]      A:0054 X:FA80 Y:0000 P:envmxdIZc
C2/AD91 BF 00 00 7E LDA $7E0000,x[$7E:FA80] A:0054 X:FA80 Y:0000 P:envmxdIZc
C2/AD95 29 C0 00    AND #$00C0              A:0000 X:FA80 Y:0000 P:envmxdIZc
C2/AD98 F0 12       BEQ $12    [$ADAC]      A:0000 X:FA80 Y:0000 P:envmxdIZc
C2/ADAC 8A          TXA                     A:0000 X:FA80 Y:0000 P:envmxdIZc
C2/ADAD A6 AC       LDX $AC    [$00:00AC]   A:FA80 X:FA80 Y:0000 P:eNvmxdIzc
C2/ADAF 9D 60 07    STA $0760,x[$00:0760]   A:FA80 X:0000 Y:0000 P:envmxdIZc
$C2/ADB2 E8          INX                     A:FA80 X:0000 Y:0000 P:envmxdIZc
$C2/ADB3 E8          INX                     A:FA80 X:0001 Y:0000 P:envmxdIzc
$C2/ADB4 86 AC       STX $AC    [$00:00AC]   A:FA80 X:0002 Y:0000 P:envmxdIzc
$C2/ADB6 A4 AE       LDY $AE    [$00:00AE]   A:FA80 X:0002 Y:0000 P:envmxdIzc
$C2/ADB8 C8          INY                     A:FA80 X:0002 Y:0000 P:envmxdIZc
$C2/ADB9 C8          INY                     A:FA80 X:0002 Y:0001 P:envmxdIzc
$C2/ADBA 84 AE       STY $AE    [$00:00AE]   A:FA80 X:0002 Y:0002 P:envmxdIzc
$C2/ADBC C4 AA       CPY $AA    [$00:00AA]   A:FA80 X:0002 Y:0002 P:envmxdIzc
$C2/ADBE 30 C7       BMI $C7    [$AD87]      A:FA80 X:0002 Y:0002 P:eNvmxdIzc

$C2/ADC0 A6 AC       LDX $AC    [$00:00AC]   A:0080 X:FB80 Y:0006 P:envmxdIzC
$C2/ADC2 9E 60 07    STZ $0760,x[$00:0762]   A:0080 X:0002 Y:0006 P:envmxdIzC
$C2/ADC5 A5 A4       LDA $A4    [$00:00A4]   A:0080 X:0002 Y:0006 P:envmxdIzC
$C2/ADC7 89 80 00    BIT #$0080              A:0054 X:0002 Y:0006 P:envmxdIzC
$C2/ADCA D0 0B       BNE $0B    [$ADD7]      A:0054 X:0002 Y:0006 P:envmxdIZC

$C2/ADCC BD 60 07    LDA $0760,x[$00:0762]   A:0054 X:0002 Y:0006 P:envmxdIZC
$C2/ADCF 9D 30 07    STA $0730,x[$00:0732]   A:0000 X:0002 Y:0006 P:envmxdIZC
$C2/ADD2 CA          DEX                     A:0000 X:0002 Y:0006 P:envmxdIZC
$C2/ADD3 CA          DEX                     A:0000 X:0001 Y:0006 P:envmxdIzC
$C2/ADD4 10 F6       BPL $F6    [$ADCC]      A:0000 X:0000 Y:0006 P:envmxdIZC

$C2/ADD6 60          RTS                     A:FA80 X:FFFE Y:0006 P:eNvmxdIzC
...return $A6DA...

MONSTER BSC: Spells
C2/AE3D A5 A4       LDA $A4    [$00:00A4]   A:0004 X:0004 Y:043A P:envmxdIzc
C2/AE3F 89 04 00    BIT #$0004              A:0054 X:0004 Y:043A P:envmxdIzc
C2/AE42 D0 0A       BNE $0A    [$AE4E]      A:0054 X:0004 Y:043A P:envmxdIzc
C2/AE4E A9 05 00    LDA #$0005              A:0054 X:0004 Y:043A P:envmxdIzc
C2/AE51 85 AA       STA $AA    [$00:00AA]   A:0005 X:0004 Y:043A P:envmxdIzc
C2/AE53 A9 EA A1    LDA #$A1EA              A:0005 X:0004 Y:043A P:envmxdIzc
C2/AE56 85 A6       STA $A6    [$00:00A6]   A:A1EA X:0004 Y:043A P:eNvmxdIzc
C2/AE58 A9 C2 00    LDA #$00C2              A:A1EA X:0004 Y:043A P:eNvmxdIzc
C2/AE5B 85 A8       STA $A8    [$00:00A8]   A:00C2 X:0004 Y:043A P:envmxdIzc
C2/AE5D 60          RTS                     A:00C2 X:0004 Y:043A P:envmxdIzc

=================================================================
MONSTER BSC: subtract FP cost from current FP
C2/AE5E A9 01 00    LDA #$0001              A:005A X:001E Y:0002
C2/AE61 85 A0       STA $A0    [$00:00A0]   A:0001 X:001E Y:0002 
C2/AE63 AD 2C 07    LDA $072C  [$00:072C]   A:0001 X:001E Y:0002
C2/AE66 A2 46 00    LDX #$0046              A:005A X:001E Y:0002
C2/AE69 A0 A2 00    LDY #$00A2              A:005A X:0046 Y:0002
C2/AE6C 20 AB B5    JSR $B5AB  [$C2:B5AB]   A:005A X:0046 Y:00A2 
C2/AE6F A5 A2       LDA $A2    [$00:00A2]   A:4606 X:00A2 Y:033E ;load FP cost and targetting
C2/AE71 AA          TAX                     A:4606 X:00A2 Y:033E 
C2/AE72 EB          XBA                     A:4606 X:4606 Y:033E 
C2/AE73 29 FF 00    AND #$00FF              A:0646 X:4606 Y:033E ;isolate targetting byte
C2/AE76 85 A4       STA $A4    [$00:00A4]   A:0046 X:4606 Y:033E ;store as targetting
C2/AE78 8A          TXA                     A:0046 X:4606 Y:033E 
C2/AE79 29 FF 00    AND #$00FF              A:4606 X:4606 Y:033E ;isolate FP cost byte
C2/AE7C 85 A2       STA $A2    [$00:00A2]   A:0006 X:4606 Y:033E ;store as FP cost
C2/AE7E A6 54       LDX $54    [$00:0054]   A:0006 X:4606 Y:033E ;load monster slot
C2/AE80 BF 1A 00 7E LDA $7E001A,x[$7E:FC1A] A:0006 X:FC00 Y:033E ;load current FP
C2/AE84 29 FF 00    AND #$00FF              A:00FA X:FC00 Y:033E ;isolate
C2/AE87 38          SEC                     A:00FA X:FC00 Y:033E 
C2/AE88 E5 A2       SBC $A2    [$00:00A2]   A:00FA X:FC00 Y:033E ;subtract spell's FP cost
C2/AE8A 10 0D       BPL $0D    [$AE99]      A:00F4 X:FC00 Y:033E ;branch if > 0
C2/AE8C A9 FD 00
	8D 2C 07						 ;Displays "Monster's FP is gone!"
C2/AE99 85 A2       STA $A2    [$00:00A2]   A:00F4 X:FC00 Y:033E ;store as FP modification
C2/AE9B BF 1A 00 7E LDA $7E001A,x[$7E:FC1A] A:00F4 X:FC00 Y:033E ;load current FP
C2/AE9F 29 00 FF    AND #$FF00              A:00FA X:FC00 Y:033E 
C2/AEA2 05 A2       ORA $A2    [$00:00A2]   A:0000 X:FC00 Y:033E ;set FP modification bits
C2/AEA4 9F 1A 00 7E STA $7E001A,x[$7E:FC1A] A:00F4 X:FC00 Y:033E ;store as current FP
C2/AEA8 BF 40 00 7E LDA $7E0040,x[$7E:FC40] A:00F4 X:FC00 Y:033E ;check if mute
C2/AEAC 89 01 00    BIT #$0001              A:0200 X:FC00 Y:033E ;if mute is active
C2/AEAF F0 08       BEQ $08    [$AEB9]      A:0200 X:FC00 Y:033E ;branch if not set
C2/	A9 FC 00
	8D 2C 07
	64 A0							 ;Displays "The monster is mute!"
C2/AEB9 60          RTS                     A:0200 X:FC00 Y:033E 

=================================================================
??? MONSTER BSC: Items stolen from Croco???
C2/AEBA			;start
C2/AEC1 BF 82 F8 7F ;load items inventory
	9F E0 E7 7E ;save to this address
	A9 FF FF
	9F 82 F8 7F ;save FF FF to inventory (FF means NO ITEM)

...

C2/AEDA BF E0 E7 7E ;loads from this address
	9F 82 F8 7F ;saves to items inventory
=================================================================
C2/B254 08
ALLY: Vital status of allies on field
$C2/B268 BF 00 00 7E LDA $7E0000,x[$7E:FA80] A:FA80 X:FA80 Y:0000 P:eNvmxdIzC
$C2/B26C 29 C0 00    AND #$00C0              A:0040 X:FA80 Y:0000 P:envmxdIzC
$C2/B26F D0 02       BNE $02    [$B273]      A:0040 X:FA80 Y:0000 P:envmxdIzC
$C2/B273 BB          TYX                     A:0080 X:FB00 Y:0002 P:envmxdIzc
$C2/B274 E8          INX                     A:0080 X:0002 Y:0002 P:envmxdIzc
$C2/B275 E8          INX                     A:0080 X:0003 Y:0002 P:envmxdIzc
$C2/B276 E0 05 00    CPX #$0005              A:0080 X:0004 Y:0002 P:envmxdIzc
$C2/B279 30 E7       BMI $E7    [$B262]      A:0080 X:0004 Y:0002 P:eNvmxdIzc
$C2/B27B A5 D0       LDA $D0    [$00:00D0]   A:0080 X:0006 Y:0004 P:envmxdIzC
$C2/B27D D0 0C       BNE $0C    [$B28B]      A:0000 X:0006 Y:0004 P:envmxdIZC
$C2/B27F A9 02 00    LDA #$0002              A:0000 X:0006 Y:0004 P:envmxdIZC
$C2/B282 0C 00 07    TSB $0700  [$00:0700]   A:0002 X:0006 Y:0004 P:envmxdIzC
$C2/B285 A9 00 80    LDA #$8000              A:0002 X:0006 Y:0004 P:envmxdIZC
$C2/B288 0C 08 07    TSB $0708  [$00:0708]   A:8000 X:0006 Y:0004 P:eNvmxdIzC

MONSTER: Vital status of all monsters on the field (for checking flower bonus)
C2/B28D 08          PHP                     A:0000 X:FC00 Y:0000
C2/B28E C2 20       REP #$20                A:0000 X:FC00 Y:0000
C2/B290 A9 00 40    LDA #$4000              A:0000 X:FC00 Y:0000
C2/B293 1C 08 07    TRB $0708  [$00:0708]   A:4000 X:FC00 Y:0000
C2/B296 A2 00 00    LDX #$0000              A:4000 X:FC00 Y:0000
C2/B299 86 D0       STX $D0    [$00:00D0]   A:4000 X:0000 Y:0000

C2/B29B 9B          TXY                     A:4000 X:0000 Y:0000
C2/B29C BF F0 A1 C2 LDA $C2A1F0,x[$C2:A1F0] A:4000 X:0000 Y:0000	;Load monster's stats
C2/B2A0 AA          TAX                     A:FC00 X:0000 Y:0000
C2/B2A1 BF 00 00 7E LDA $7E0000,x[$7E:FC00] A:FC00 X:FC00 Y:0000	;load mortal status
C2/B2A5 29 C0 00    AND #$00C0              A:0040 X:FC00 Y:0000	;check if disabled or removed
C2/B2A8 D0 02       BNE $02    [$B2AC]      A:0040 X:FC00 Y:0000
C2/B2AC BB          TYX                     A:0040 X:FC00 Y:0000
C2/B2AD E8          INX                     A:0040 X:0000 Y:0000
C2/B2AE E8          INX                     A:0040 X:0001 Y:0000
C2/B2AF E0 0F 00    CPX #$000F              A:0040 X:0002 Y:0000
C2/B2B2 30 E7       BMI $E7    [$B29B]      A:0080 X:0010 Y:000E

C2/B2B4 A5 D0       LDA $D0    [$00:00D0]   A:0080 X:0010 Y:000E
C2/B2B6 D0 0C       BNE $0C    [$B2C4]      A:0001 X:0010 Y:000E

C2/B2B8 A9 02 00    LDA #$0002              A:00F5 X:2500 Y:2500
C2/B2BB 0C 00 07    TSB $0700  [$00:0700]   A:00F5 X:2500 Y:2500
C2/B2BE A9 00 40    LDA #$4000              A:00F5 X:2500 Y:2500
C2/B2C1 0C 08 07    TSB $0708  [$00:0708]   A:00F5 X:2500 Y:2500
C2/B2C4 28          PLP                     A:00F5 X:2500 Y:2500

C2/B2C5 60          RTS                     A:0001 X:0010 Y:000E

=================================================================
Evade/Evasion: Randomized hit number calculation
NOTES: Also used for *Confuse
C2/B2C6 DA          PHX                     A:0064 X:FC00 Y:0730
C2/B2C7 5A          PHY                     A:0064 X:FC00 Y:0730
C2/B2C8 85 44       STA $44    [$00:0044]   A:0064 X:FC00 Y:0730
C2/B2CA A5 40       LDA $40    [$00:0040]   A:0064 X:FC00 Y:0730
C2/B2CC 29 00 FF    AND #$FF00              A:0000 X:FC00 Y:0730
C2/B2CF 09 01 00    ORA #$0001              A:0000 X:FC00 Y:0730
C2/B2D2 85 40       STA $40    [$00:0040]   A:0001 X:FC00 Y:0730
C2/B2D4 22 00 00 C0 JSL $C00000[$C0:0000]   A:0001 X:FC00 Y:0730
C2/B2D8 A5 46       LDA $46    [$00:0046]   A:0000 X:0015 Y:0730
C2/B2DA 7A          PLY                     A:0015 X:0015 Y:0730
C2/B2DB FA          PLX                     A:0015 X:0015 Y:0730
C2/B2DC 60          RTS                     A:0015 X:FC00 Y:0730

C2/B2DD A5 DB       LDA $DB    [$00:00DB]   A:0000 X:FA80 Y:0730
C2/B2DF 38          SEC                     A:0000 X:FA80 Y:0730
C2/B2E0 E5 DA       SBC $DA    [$00:00DA]   A:0000 X:FA80 Y:0730
C2/B2E2 EB          XBA                     A:0000 X:FA80 Y:0730
C2/B2E3 A9 00       LDA #$00                A:0000 X:FA80 Y:0730
C2/B2E5 EB          XBA                     A:0000 X:FA80 Y:0730
C2/B2E6 C2 20       REP #$20                A:0000 X:FA80 Y:0730
C2/B2E8 1A          INC A                   A:0000 X:FA80 Y:0730
C2/B2E9 20 C6 B2    JSR $B2C6  [$C2:B2C6]   A:0001 X:FA80 Y:0730
C2/B2EC E2 20       SEP #$20                A:0000 X:FA80 Y:0730
C2/B2EE 18          CLC                     A:0000 X:FA80 Y:0730
C2/B2EF 65 DA       ADC $DA    [$00:00DA]   A:0000 X:FA80 Y:0730
C2/B2F1 60          RTS                     A:0000 X:FA80 Y:0730

=================================================================


Evade/Evasion: generate random number/Randomized hit number calculation
C2/B2F2 A5 DB							 ;
C2/B2F5 EB
C2/B2F6 A9 00
C2/B2F8 EB
C2/B2F9 C2 20
C2/B2FB 1A 
C2/B2FC 20 C6 B2

C2/B2FE E2 20       SEP #$20                A:0062 X:FB80 Y:0730 
C2/B300 C5 DA       CMP $DA    [$00:00DA]   A:0062 X:FB80 Y:0730 ;compare generated number to Hit %
C2/B302 30 03       BMI $03    [$B307]      A:0062 X:FB80 Y:0730 ;branch if in hit range
C2/B304 A9 00       LDA #$00                A:0062 X:FB80 Y:0730 ;set 'miss' flag
C2/B306 60          RTS                     A:0000 X:FB80 Y:0730 

=================================================================
Load monster's stats
C2/B30A C2 20       REP #$20                A:0004 X:FA80 Y:2500
C2/B30C 8A          TXA                     A:0004 X:FA80 Y:2500
C2/B30D CF F0 A1 C2 CMP $C2A1F0[$C2:A1F0]   A:FA80 X:FA80 Y:2500
C2/B311 10 06       BPL $06    [$B319]      A:FA80 X:FA80 Y:2500
C2/B313 A9 01 00    LDA #$0001              A:FA80 X:FA80 Y:2500
C2/B316 E2 20       SEP #$20                A:0001 X:FA80 Y:2500
C2/B318 60          RTS                     A:0001 X:FA80 Y:2500

	A9 00 00
	E2 20
	60

=================================================================
Multiply the # of Power-ups from presses or rotations
DISASSEMBLER NOTE: It's called by ally specials that use Button Mash / Arrow Rotation timings)
		 - "7E:005E,x" and "7E:005F,x" are together one value (i.e. 16-bit) but together are used for different things.
		   For allies, it's used as the timing stat for weapons.
		   For monsters, it's used as the value used for each powerup of damage applied on PowerUps.
		 - A "PowerUp" is the # of times the button was pressed or # of times arrows were rotated.
		 - In all cases in this certain line of code, only the MONSTER VALUE can be used.

C2/B33F A5 D0	 ;from 7E:005E,x
	8D 02 42
	A5 D4	 ;from $B0 (how many "PowerUps" there were)
	8D 03 42
	20 C9 B3 ; JSR to return
	AD 16 42
	95 00
	AD 17 42
	95 01
	74 02
	
	A5 D1	 ;from 7E:005F,x (a value from monsters ONLY)
	8D 02 42 
	A5 D4	 ;from $B0 (how many "PowerUps" there were)
	8D 03 42
	20 C9 B3 ; JSR to return
	B5 01
	18	 ; set addition
	6D 16 42
	95 01
	B5 02
	6D 17 42
	95 02
	60	 ; return
=================================================================

Universal Stats loader
C2/B3CA 08          PHP                     A:0000 X:0006 Y:00E0
C2/B3CB C2 30       REP #$30                A:0000 X:0006 Y:00E0
C2/B3CD 29 FF 00    AND #$00FF              A:0000 X:0006 Y:00E0
C2/B3D0 85 D0       STA $D0    [$00:00D0]   A:0000 X:0006 Y:00E0
C2/B3D2 7C D5 B3    JMP ($B3D5,x)[$C2:B452] A:0000 X:0006 Y:00E0
	E7 B3	;Loads bytes for Monster attacks (loads 4 bytes to E0-E3)
	E7 B3	;Loads bytes for Monster attacks (loads 4 bytes to E0-E3)
	04 B4	;Loads bytes for items (weapons/armors/accessories/consumables) (loads 18 bytes to E0-F1)
	52 B4	;Loads bytes for spells (loads 12 bytes to E0-EB)
	8D B4	;Loads ??? at FA:0002 (00-10)
	E4 B4	;Loads ??? at FA:0002 (00-04)
	1E B5	;Loads ??? at FA:0000 (00-0E) (Something to do with monsters?)
	65 B5	;Loads bytes for EXP, coins, items, Yoshi Cookie (loads 4 bytes to E0-E3)
	8E B5	;Load timing ranges for weapons (before battle)

================================================================
Loads bytes for items (weapons/armors/accessories/consumables) (This example uses Rock Candy)
C2/B404 AF 04 00 FA LDA $FA0004[$FA:0004]   A:0083 X:0004 Y:00E0
C2/B408 85 DC       STA $DC    [$00:00DC]   A:014D X:0004 Y:00E0
C2/B40A A9 FA 00    LDA #$00FA              A:014D X:0004 Y:00E0
C2/B40D 85 DE       STA $DE    [$00:00DE]   A:00FA X:0004 Y:00E0
C2/B40F A5 D0       LDA $D0    [$00:00D0]   A:00FA X:0004 Y:00E0
C2/B411 0A          ASL A                   A:0083 X:0004 Y:00E0
C2/B412 85 DA       STA $DA    [$00:00DA]   A:0106 X:0004 Y:00E0
C2/B414 0A          ASL A                   A:0106 X:0004 Y:00E0
C2/B415 0A          ASL A                   A:020C X:0004 Y:00E0
C2/B416 0A          ASL A                   A:0418 X:0004 Y:00E0
C2/B417 18          CLC                     A:0830 X:0004 Y:00E0
C2/B418 65 DA       ADC $DA    [$00:00DA]   A:0830 X:0004 Y:00E0
C2/B41A BB          TYX                     A:0936 X:0004 Y:00E0
C2/B41B A8          TAY                     A:0936 X:00E0 Y:00E0
C2/B41C B7 DC       LDA [$DC],y[$FA:0A83]   A:0936 X:00E0 Y:0936
C2/B41E 95 00       STA $00,x  [$00:00E0]   A:002B X:00E0 Y:0936
C2/B420 C8          INY                     A:002B X:00E0 Y:0936
C2/B421 C8          INY                     A:002B X:00E0 Y:0937
C2/B422 B7 DC       LDA [$DC],y[$FA:0A85]   A:002B X:00E0 Y:0938
C2/B424 95 02       STA $02,x  [$00:00E2]   A:5400 X:00E0 Y:0938
C2/B426 C8          INY                     A:5400 X:00E0 Y:0938
C2/B427 C8          INY                     A:5400 X:00E0 Y:0939
C2/B428 B7 DC       LDA [$DC],y[$FA:0A87]   A:5400 X:00E0 Y:093A
C2/B42A 95 04       STA $04,x  [$00:00E4]   A:0000 X:00E0 Y:093A
C2/B42C C8          INY                     A:0000 X:00E0 Y:093A
C2/B42D C8          INY                     A:0000 X:00E0 Y:093B
C2/B42E B7 DC       LDA [$DC],y[$FA:0A89]   A:0000 X:00E0 Y:093C
C2/B430 95 06       STA $06,x  [$00:00E6]   A:0000 X:00E0 Y:093C
C2/B432 C8          INY                     A:0000 X:00E0 Y:093C
C2/B433 C8          INY                     A:0000 X:00E0 Y:093D
C2/B434 B7 DC       LDA [$DC],y[$FA:0A8B]   A:0000 X:00E0 Y:093E
C2/B436 95 08       STA $08,x  [$00:00E8]   A:0000 X:00E0 Y:093E
C2/B438 C8          INY                     A:0000 X:00E0 Y:093E
C2/B439 C8          INY                     A:0000 X:00E0 Y:093F
C2/B43A B7 DC       LDA [$DC],y[$FA:0A8D]   A:0000 X:00E0 Y:0940
C2/B43C 95 0A       STA $0A,x  [$00:00EA]   A:0000 X:00E0 Y:0940
C2/B43E C8          INY                     A:0000 X:00E0 Y:0940
C2/B43F C8          INY                     A:0000 X:00E0 Y:0941
C2/B440 B7 DC       LDA [$DC],y[$FA:0A8F]   A:0000 X:00E0 Y:0942
C2/B442 95 0C       STA $0C,x  [$00:00EC]   A:0000 X:00E0 Y:0942
C2/B444 C8          INY                     A:0000 X:00E0 Y:0942
C2/B445 C8          INY                     A:0000 X:00E0 Y:0943
C2/B446 B7 DC       LDA [$DC],y[$FA:0A91]   A:0000 X:00E0 Y:0944
C2/B448 95 0E       STA $0E,x  [$00:00EE]   A:C800 X:00E0 Y:0944
C2/B44A C8          INY                     A:C800 X:00E0 Y:0944
C2/B44B C8          INY                     A:C800 X:00E0 Y:0945
C2/B44C B7 DC       LDA [$DC],y[$FA:0A93]   A:C800 X:00E0 Y:0946
C2/B44E 95 10       STA $10,x  [$00:00F0]   A:00FF X:00E0 Y:0946
C2/B450 28          PLP                     A:00FF X:00E0 Y:0946
C2/B451 60          RTS                     A:00FF X:00E0 Y:0946

Loads bytes for spells
C2/B452 AF 12 00 FA LDA $FA0012[$FA:0012]   A:0006 X:0006 Y:00E0 
C2/B456 85 DC       STA $DC    [$00:00DC]   A:20F1 X:0006 Y:00E0 
C2/B458 A9 FA 00    LDA #$00FA              A:20F1 X:0006 Y:00E0 
C2/B45B 85 DE       STA $DE    [$00:00DE]   A:00FA X:0006 Y:00E0 
C2/B45D A5 D0       LDA $D0    [$00:00D0]   A:00FA X:0006 Y:00E0 
C2/B45F 0A          ASL A                   A:0006 X:0006 Y:00E0 
C2/B460 0A          ASL A                   A:000C X:0006 Y:00E0 
C2/B461 85 DA       STA $DA    [$00:00DA]   A:0018 X:0006 Y:00E0 
C2/B463 0A          ASL A                   A:0018 X:0006 Y:00E0 
C2/B464 18          CLC                     A:0030 X:0006 Y:00E0 
C2/B465 65 DA       ADC $DA    [$00:00DA]   A:0030 X:0006 Y:00E0 
C2/B467 BB          TYX                     A:0048 X:0006 Y:00E0 
C2/B468 A8          TAY                     A:0048 X:00E0 Y:00E0 
C2/B469 B7 DC       LDA [$DC],y[$FA:2139]   A:0048 X:00E0 Y:0048 
C2/B46B 95 00       STA $00,x  [$00:00E0]   A:0582 X:00E0 Y:0048 
C2/B46D C8          INY                     A:0582 X:00E0 Y:0048 
C2/B46E C8          INY                     A:0582 X:00E0 Y:0049 
C2/B46F B7 DC       LDA [$DC],y[$FA:213B]   A:0582 X:00E0 Y:004A 
C2/B471 95 02       STA $02,x  [$00:00E2]   A:4202 X:00E0 Y:004A 
C2/B473 C8          INY                     A:4202 X:00E0 Y:004A 
C2/B474 C8          INY                     A:4202 X:00E0 Y:004B 
C2/B475 B7 DC       LDA [$DC],y[$FA:213D]   A:4202 X:00E0 Y:004C 
C2/B477 95 04       STA $04,x  [$00:00E4]   A:2800 X:00E0 Y:004C 
C2/B479 C8          INY                     A:2800 X:00E0 Y:004C 
C2/B47A C8          INY                     A:2800 X:00E0 Y:004D 
C2/B47B B7 DC       LDA [$DC],y[$FA:213F]   A:2800 X:00E0 Y:004E 
C2/B47D 95 06       STA $06,x  [$00:00E6]   A:7F64 X:00E0 Y:004E 
C2/B47F C8          INY                     A:7F64 X:00E0 Y:004E 
C2/B480 C8          INY                     A:7F64 X:00E0 Y:004F 
C2/B481 B7 DC       LDA [$DC],y[$FA:2141]   A:7F64 X:00E0 Y:0050 
C2/B483 95 08       STA $08,x  [$00:00E8]   A:0000 X:00E0 Y:0050 
C2/B485 C8          INY                     A:0000 X:00E0 Y:0050 
C2/B486 C8          INY                     A:0000 X:00E0 Y:0051 
C2/B487 B7 DC       LDA [$DC],y[$FA:2143]   A:0000 X:00E0 Y:0052 
C2/B489 95 0A       STA $0A,x  [$00:00EA]   A:00FF X:00E0 Y:0052 
C2/B48B 28          PLP                     A:00FF X:00E0 Y:0052 
C2/B48C 60          RTS                     A:00FF X:00E0 Y:0052 

----------------------------------------------------------------
Load timing ranges for weapons (before battle)
C2/B58E AF 26 00 FA LDA $FA0026[$FA:0026]   A:0003 X:0010 Y:00E0 ;pointer in bank 3A (goes to 3A/438A)
C2/B592 85 DC       STA $DC    [$00:00DC]   A:438A X:0010 Y:00E0
C2/B594 A9 FA 00    LDA #$00FA              A:438A X:0010 Y:00E0
C2/B597 85 DE       STA $DE    [$00:00DE]   A:00FA X:0010 Y:00E0
C2/B599 A5 D0       LDA $D0    [$00:00D0]   A:00FA X:0010 Y:00E0
C2/B59B 0A          ASL A                   A:0003 X:0010 Y:00E0
C2/B59C 0A          ASL A                   A:0006 X:0010 Y:00E0
C2/B59D BB          TYX                     A:000C X:0010 Y:00E0
C2/B59E A8          TAY                     A:000C X:00E0 Y:00E0
C2/B59F B7 DC       LDA [$DC],y[$FA:4396]   A:000C X:00E0 Y:000C ;load weapon range (bytes 1 and 2)
C2/B5A1 95 00       STA $00,x  [$00:00E0]   A:1800 X:00E0 Y:000C ;save to DirectPage $E0
C2/B5A3 C8          INY                     A:1800 X:00E0 Y:000C
C2/B5A4 C8          INY                     A:1800 X:00E0 Y:000D
C2/B5A5 B7 DC       LDA [$DC],y[$FA:4398]   A:1800 X:00E0 Y:000E ;load weapons range (bytes 3 and 4)
C2/B5A7 95 02       STA $02,x  [$00:00E2]   A:381E X:00E0 Y:000E ;save to DirectPage $E2
C2/B5A9 28          PLP                     A:381E X:00E0 Y:000E
C2/B5AA 60          RTS                     A:381E X:00E0 Y:000E
----------------------------------------------------------------
MONSTER: Spells
C2/B5AB 08          PHP                     A:005A X:0046 Y:00A2 P:envmxdIzc
C2/B5AC C2 30       REP #$30                A:005A X:0046 Y:00A2 P:envmxdIzc
C2/B5AE 29 FF 00    AND #$00FF              A:005A X:0046 Y:00A2 P:envmxdIzc
C2/B5B1 85 D0       STA $D0    [$00:00D0]   A:005A X:0046 Y:00A2 P:envmxdIzc
C2/B5B3 7C B6 B5    JMP ($B5B6,x)[$C2:B790] A:005A X:0046 Y:00A2 P:envmxdIzc

C2/B790 A9 02 00    LDA #$0002              A:005A X:0046 Y:00A2 P:envmxdIzc
C2/B793 4C 68 B7    JMP $B768  [$C2:B768]   A:0002 X:0046 Y:00A2 P:envmxdIzc

$C2/B768 85 D8       STA $D8    [$00:00D8]   A:0002 X:0046 Y:00A2 P:envmxdIzc
$C2/B76A AF 12 00 FA LDA $FA0012[$FA:0012]   A:0002 X:0046 Y:00A2 ;load Special Attack names
$C2/B76E 85 DC       STA $DC    [$00:00DC]   A:20F1 X:0046 Y:00A2 P:envmxdIzc
$C2/B770 A9 FA 00    LDA #$00FA              A:20F1 X:0046 Y:00A2 P:envmxdIzc
$C2/B773 85 DE       STA $DE    [$00:00DE]   A:00FA X:0046 Y:00A2 P:envmxdIzc
$C2/B775 A5 D0       LDA $D0    [$00:00D0]   A:00FA X:0046 Y:00A2 P:envmxdIzc
$C2/B777 0A          ASL A                   A:005A X:0046 Y:00A2 P:envmxdIzc
$C2/B778 0A          ASL A                   A:00B4 X:0046 Y:00A2 P:envmxdIzc
$C2/B779 85 DA       STA $DA    [$00:00DA]   A:0168 X:0046 Y:00A2 P:envmxdIzc
$C2/B77B 0A          ASL A                   A:0168 X:0046 Y:00A2 P:envmxdIzc
$C2/B77C 18          CLC                     A:02D0 X:0046 Y:00A2 P:envmxdIzc
$C2/B77D 65 DA       ADC $DA    [$00:00DA]   A:02D0 X:0046 Y:00A2 P:envmxdIzc
$C2/B77F 18          CLC                     A:0438 X:0046 Y:00A2 P:envmxdIzc
$C2/B780 65 D8       ADC $D8    [$00:00D8]   A:0438 X:0046 Y:00A2 P:envmxdIzc
$C2/B782 BB          TYX                     A:043A X:0046 Y:00A2 P:envmxdIzc
$C2/B783 A8          TAY                     A:043A X:00A2 Y:00A2 P:envmxdIzc
$C2/B784 B7 DC       LDA [$DC],y[$FA:252B]   A:043A X:00A2 Y:043A P:envmxdIzc
$C2/B786 95 00       STA $00,x  [$00:00A2]   A:5410 X:00A2 Y:043A P:envmxdIzc
$C2/B788 28          PLP                     A:5410 X:00A2 Y:043A P:envmxdIzc
$C2/B789 60          RTS                     A:5410 X:00A2 Y:043A P:envmxdIzc

----------------------------------------------------------------
Loads equip stats before battle
DISASSEMBLER NOTE: This runs every time an equip item is changed on the Overworld menu, too. Not only just before loading the battle itself.

Refreshes and resets all stats (to get a blank slate for application)
C2/B94C 08          PHP                     A:0000 X:FA80 Y:1313
C2/B94D E2 20       SEP #$20                A:0000 X:FA80 Y:1313
C2/B94F 86 F8       STX $F8    [$00:00F8]   A:0000 X:FA80 Y:1313
C2/B951 BF 15 00 7E LDA $7E0015,x[$7E:FA95] A:0000 X:FA80 Y:1313
C2/B955 9F 70 00 7E STA $7E0070,x[$7E:FAF0] A:0014 X:FA80 Y:1313
C2/B959 BF 16 00 7E LDA $7E0016,x[$7E:FA96] A:0014 X:FA80 Y:1313
C2/B95D 9F 72 00 7E STA $7E0072,x[$7E:FAF2] A:0014 X:FA80 Y:1313
C2/B961 BF 17 00 7E LDA $7E0017,x[$7E:FA97] A:0014 X:FA80 Y:1313
C2/B965 9F 74 00 7E STA $7E0074,x[$7E:FAF4] A:0000 X:FA80 Y:1313
C2/B969 BF 18 00 7E LDA $7E0018,x[$7E:FA98] A:0000 X:FA80 Y:1313
C2/B96D 9F 76 00 7E STA $7E0076,x[$7E:FAF6] A:000A X:FA80 Y:1313
C2/B971 BF 19 00 7E LDA $7E0019,x[$7E:FA99] A:000A X:FA80 Y:1313
C2/B975 9F 78 00 7E STA $7E0078,x[$7E:FAF8] A:0002 X:FA80 Y:1313
C2/B979 A9 00       LDA #$00                A:0002 X:FA80 Y:1313
C2/B97B 9F 71 00 7E STA $7E0071,x[$7E:FAF1] A:0000 X:FA80 Y:1313
C2/B97F 9F 73 00 7E STA $7E0073,x[$7E:FAF3] A:0000 X:FA80 Y:1313
C2/B983 9F 75 00 7E STA $7E0075,x[$7E:FAF5] A:0000 X:FA80 Y:1313
C2/B987 9F 77 00 7E STA $7E0077,x[$7E:FAF7] A:0000 X:FA80 Y:1313
C2/B98B 9F 79 00 7E STA $7E0079,x[$7E:FAF9] A:0000 X:FA80 Y:1313
C2/B98F 9F 40 00 7E STA $7E0040,x[$7E:FAC0] A:0000 X:FA80 Y:1313
C2/B993 9F 41 00 7E STA $7E0041,x[$7E:FAC1] A:0000 X:FA80 Y:1313
C2/B997 9F 42 00 7E STA $7E0042,x[$7E:FAC2] A:0000 X:FA80 Y:1313
C2/B99B 9F 43 00 7E STA $7E0043,x[$7E:FAC3] A:0000 X:FA80 Y:1313
C2/B99F 9F 44 00 7E STA $7E0044,x[$7E:FAC4] A:0000 X:FA80 Y:1313
C2/B9A3 9F 4B 00 7E STA $7E004B,x[$7E:FACB] A:0000 X:FA80 Y:1313
C2/B9A7 9F 4C 00 7E STA $7E004C,x[$7E:FACC] A:0000 X:FA80 Y:1313
C2/B9AB 9F 4D 00 7E STA $7E004D,x[$7E:FACD] A:0000 X:FA80 Y:1313
C2/B9AF 9F 4E 00 7E STA $7E004E,x[$7E:FACE] A:0000 X:FA80 Y:1313
C2/B9B3 9F 4F 00 7E STA $7E004F,x[$7E:FACF] A:0000 X:FA80 Y:1313
C2/B9B7 9F 5B 00 7E STA $7E005B,x[$7E:FADB] A:0000 X:FA80 Y:1313

Begins applying stats from equipment
C2/B9BB BF 1C 00 7E LDA $7E001C,x[$7E:FA9C] A:0000 X:FA80 Y:1313 ;Load weapon index number
C2/B9BF C9 FF       CMP #$FF                A:00FF X:FA80 Y:1313
C2/B9C1 D0 04       BNE $04    [$B9C7]      A:00FF X:FA80 Y:1313
C2/B9C3 BF 01 00 7E LDA $7E0001,x[$7E:FA81] A:00FF X:FA80 Y:1313 ;load ally's number

C2/B9C7 9F 2E 00 7E STA $7E002E,x[$7E:FAAE] A:0000 X:FA80 Y:1313 ;save to weapon animation to display
C2/B9CB 85 FA       STA $FA    [$00:00FA]   A:0000 X:FA80 Y:1313
C2/B9CD A2 10 00    LDX #$0010              A:0000 X:FA80 Y:1313
C2/B9D0 A0 E0 00    LDY #$00E0              A:0000 X:0010 Y:1313
C2/B9D3 20 CA B3    JSR $B3CA  [$C2:B3CA]   A:0000 X:0010 Y:00E0 ;Load timing ranges for weapons (before battle)

C2/B9D6 A6 F8       LDX $F8    [$00:00F8]   A:160E X:00E0 Y:0002
C2/B9D8 C2 20       REP #$20                A:160E X:FA80 Y:0002
C2/B9DA A5 E0       LDA $E0    [$00:00E0]   A:160E X:FA80 Y:0002
C2/B9DC 9F 5C 00 7E STA $7E005C,x[$7E:FADC] A:0800 X:FA80 Y:0002 ;save weapon timings to byte 1 and byte 2
C2/B9E0 A5 E2       LDA $E2    [$00:00E2]   A:0800 X:FA80 Y:0002
C2/B9E2 9F 5E 00 7E STA $7E005E,x[$7E:FADE] A:160E X:FA80 Y:0002 ;save weapon timings to byte 3 and byte 4
C2/B9E6 E2 20       SEP #$20                A:160E X:FA80 Y:0002
C2/B9E8 A5 FA       LDA $FA    [$00:00FA]   A:160E X:FA80 Y:0002
C2/B9EA A2 04 00    LDX #$0004              A:1600 X:FA80 Y:0002 ;pointer
C2/B9ED A0 E0 00    LDY #$00E0              A:1600 X:0004 Y:0002 ;start writing at direct page $7E:00E0
C2/B9F0 20 CA B3    JSR $B3CA  [$C2:B3CA]   A:1600 X:0004 Y:00E0 ;load item stats

C2/B9F3 A6 F8       LDX $F8    [$00:00F8]   A:00FF X:00E0 Y:0010
C2/B9F5 A5 EE       LDA $EE    [$00:00EE]   A:00FF X:FA80 Y:0010 ;load weapon's RNG attack range
C2/B9F7 9F 7A 00 7E STA $7E007A,x[$7E:FAFA] A:0000 X:FA80 Y:0010 ;save as RNG attack range byte
C2/B9FB 20 34 BA    JSR $BA34  [$C2:BA34]   A:0000 X:FA80 Y:0010 ;Apply weapon stats on character
C2/B9FE BF 1D 00 7E LDA $7E001D,x[$7E:FA9D] A:0000 X:FA80 Y:0010 ;Load armor
C2/BA02 C9 FF       CMP #$FF                A:00FF X:FA80 Y:0010 ;check if nothing equipped
C2/BA04 F0 0E       BEQ $0E    [$BA14]      A:00FF X:FA80 Y:0010 ;skip if nothing equipped
	A2 04 00						 ;pointer
	A0 E0 00						 ;start writing at direct page $7E:00E0
	20 CA B3						 ;load item stats
	A6 F8
	20 34 BA						 ;Apply armor stats on character

C2/BA14 BF 1E 00 7E LDA $7E001E,x[$7E:FA9E] A:00FF X:FA80 Y:0010 ;Load accessory
C2/BA18 C9 FF       CMP #$FF                A:004C X:FA80 Y:0010
C2/BA1A F0 0E       BEQ $0E    [$BA2A]      A:004C X:FA80 Y:0010
C2/BA1C A2 04 00    LDX #$0004              A:004C X:FA80 Y:0010
C2/BA1F A0 E0 00    LDY #$00E0              A:004C X:0004 Y:0010
C2/BA22 20 CA B3    JSR $B3CA  [$C2:B3CA]   A:004C X:0004 Y:00E0 ;load item stats
C2/BA25 A6 F8       LDX $F8    [$00:00F8]   A:00FF X:00E0 Y:0568
C2/BA27 20 34 BA    JSR $BA34  [$C2:BA34]   A:00FF X:FA80 Y:0568 ;Apply accessory stats on character

C2/BA2A BF 4F 00 7E LDA $7E004F,x[$7E:FACF] A:0000 X:FA80 Y:0568 ; Load status (Attack Up/Defense Up) casted from equipment 
C2/BA2E 9F 41 00 7E STA $7E0041,x[$7E:FAC1] A:0000 X:FA80 Y:0568 ; Save to current status in battle
C2/BA32 28          PLP                     A:0000 X:FA80 Y:0568
C2/BA33 60          RTS                     A:0000 X:FA80 Y:0568

Apply equipment stats on character
C2/BA34 C2 20       REP #$20                A:00FF X:FA80 Y:0568
C2/BA36 A5 E9       LDA $E9    [$00:00E9]   A:00FF X:FA80 Y:0568
C2/BA38 29 FF 00    AND #$00FF              A:0002 X:FA80 Y:0568
C2/BA3B 89 80 00    BIT #$0080              A:0002 X:FA80 Y:0568
C2/BA3E F0 03       BEQ $03    [$BA43]      A:0002 X:FA80 Y:0568

C2/BA43 18          CLC                     A:0002 X:FA80 Y:0568
C2/BA44 7F 70 00 7E ADC $7E0070,x[$7E:FAF0] A:0002 X:FA80 Y:0568 ;Speed
C2/BA48 10 03       BPL $03    [$BA4D]      A:0016 X:FA80 Y:0568 ;
C2/BA4D 9F 70 00 7E STA $7E0070,x[$7E:FAF0] A:0016 X:FA80 Y:0568 ;
C2/BA51 A5 EA       LDA $EA    [$00:00EA]   A:0016 X:FA80 Y:0568
C2/BA53 29 FF 00    AND #$00FF              A:0100 X:FA80 Y:0568
C2/BA56 89 80 00    BIT #$0080              A:0000 X:FA80 Y:0568
C2/BA59 F0 03       BEQ $03    [$BA5E]      A:0000 X:FA80 Y:0568
C2/BA5E 18          CLC                     A:0000 X:FA80 Y:0568
C2/BA5F 7F 72 00 7E ADC $7E0072,x[$7E:FAF2] A:0000 X:FA80 Y:0568
C2/BA63 10 03       BPL $03    [$BA68]      A:0014 X:FA80 Y:0568
C2/BA68 9F 72 00 7E STA $7E0072,x[$7E:FAF2] A:0014 X:FA80 Y:0568
C2/BA6C A5 EB       LDA $EB    [$00:00EB]   A:0014 X:FA80 Y:0568
C2/BA6E 29 FF 00    AND #$00FF              A:0501 X:FA80 Y:0568
C2/BA71 89 80 00    BIT #$0080              A:0001 X:FA80 Y:0568
C2/BA74 F0 03       BEQ $03    [$BA79]      A:0001 X:FA80 Y:0568
C2/BA79 18          CLC                     A:0001 X:FA80 Y:0568
C2/BA7A 7F 74 00 7E ADC $7E0074,x[$7E:FAF4] A:0001 X:FA80 Y:0568
C2/BA7E 10 03       BPL $03    [$BA83]      A:0001 X:FA80 Y:0568
C2/BA83 9F 74 00 7E STA $7E0074,x[$7E:FAF4] A:0001 X:FA80 Y:0568
C2/BA87 A5 EC       LDA $EC    [$00:00EC]   A:0001 X:FA80 Y:0568
C2/BA89 29 FF 00    AND #$00FF              A:0105 X:FA80 Y:0568
C2/BA8C 89 80 00    BIT #$0080              A:0005 X:FA80 Y:0568
C2/BA8F F0 03       BEQ $03    [$BA94]      A:0005 X:FA80 Y:0568
C2/BA94 18          CLC                     A:0005 X:FA80 Y:0568
C2/BA95 7F 76 00 7E ADC $7E0076,x[$7E:FAF6] A:0005 X:FA80 Y:0568
C2/BA99 10 03       BPL $03    [$BA9E]      A:000F X:FA80 Y:0568
C2/BA9E 9F 76 00 7E STA $7E0076,x[$7E:FAF6] A:000F X:FA80 Y:0568
C2/BAA2 A5 ED       LDA $ED    [$00:00ED]   A:000F X:FA80 Y:0568
C2/BAA4 29 FF 00    AND #$00FF              A:0001 X:FA80 Y:0568
C2/BAA7 89 80 00    BIT #$0080              A:0001 X:FA80 Y:0568
C2/BAAA F0 03       BEQ $03    [$BAAF]      A:0001 X:FA80 Y:0568
C2/BAAF 18          CLC                     A:0001 X:FA80 Y:0568
C2/BAB0 7F 78 00 7E ADC $7E0078,x[$7E:FAF8] A:0001 X:FA80 Y:0568
C2/BAB4 9F 78 00 7E STA $7E0078,x[$7E:FAF8] A:0003 X:FA80 Y:0568

C2/BAB8 E2 20       SEP #$20                A:0003 X:FA80 Y:0568 ; enable 8-bit
C2/BABA BF 4B 00 7E LDA $7E004B,x[$7E:FACB] A:0003 X:FA80 Y:0568
C2/BABE 05 E4       ORA $E4    [$00:00E4]   A:0000 X:FA80 Y:0568 ; Element
C2/BAC0 9F 4B 00 7E STA $7E004B,x[$7E:FACB] A:0000 X:FA80 Y:0568 ; Save as element on weapon
C2/BAC4 BF 4C 00 7E LDA $7E004C,x[$7E:FACC] A:0000 X:FA80 Y:0568
C2/BAC8 05 E5       ORA $E5    [$00:00E5]   A:0000 X:FA80 Y:0568 ; Ineffective elements
C2/BACA 9F 4C 00 7E STA $7E004C,x[$7E:FACC] A:0000 X:FA80 Y:0568 ; Saves and protects against elements (0 damage vs set element)
C2/BACE BF 4D 00 7E LDA $7E004D,x[$7E:FACD] A:0000 X:FA80 Y:0568 ; elemental strengths
C2/BAD2 05 E6       ORA $E6    [$00:00E6]   A:0000 X:FA80 Y:0568 ; Add elemental strengths
C2/BAD4 9F 4D 00 7E STA $7E004D,x[$7E:FACD] A:0000 X:FA80 Y:0568
C2/BAD8 A5 E0       LDA $E0    [$00:00E0]   A:0000 X:FA80 Y:0568 ; Load item attributes [1]
C2/BADA 89 80       BIT #$80                A:0002 X:FA80 Y:0568 ; Check if Mortality Protection bit set
C2/BADC F0 0A       BEQ $0A    [$BAE8]      A:0002 X:FA80 Y:0568 ; jump if not
	BF 4F 00 7E
	09 02							 ; Sets Mortality Protection
	9F 4F 00 7E						 ; Saves back to Equip Enhancements byte
C2/BAE8 A5 E1       LDA $E1    [$00:00E1]   A:0002 X:FA80 Y:0568 ; Load item attributes
C2/BAEA 89 01       BIT #$01                A:0000 X:FA80 Y:0568 ; Check if "Status Protection" bit is set
C2/BAEC F0 0A       BEQ $0A    [$BAF8]      A:0000 X:FA80 Y:0568 ; jump if not
	BF 4E 00 7E						 ; Load status protection byte
	05 E7							 ; Load status ailments
	9F 4E 00 7E						 ; Save and protect against ailments
C2/BAF8 A5 E1       LDA $E1    [$00:00E1]   A:0000 X:FA80 Y:0568
C2/BAFA 89 02       BIT #$02                A:0000 X:FA80 Y:0568 ; check if "Status Infliction" (for enhancements like Attack Up/Defense Up etc) bit is set
C2/BAFC F0 0A       BEQ $0A    [$BB08]      A:0000 X:FA80 Y:0568 ; jump if not 
	BF 4F 00 7E						 ; Load enhancements from equipment
	05 E8							 ; Load set enhancements from item
	9F 4F 00 7E						 ; Saves and inflicts upon entering battle
C2/BB08 60          RTS                     A:0000 X:FA80 Y:0568
----------------------------------------------------------------
Inventory

Equipment Items
C2/BBF5 08		;start for equipment
	E2 20
	A2 00 00
	BF 64 F8 7F	;load equipment storage
C2/BBFF C9 FF		;see if there is an empty slot (FF is NO ITEM)
	F0 0B		;JSR BC0E

C2/BC03	E8
	E0 1E 00
	30 F2
	A2 FF FF
	28
	60

C2/BC0E A5 E0
C2/BC10 9F 64 F8 7F	;save to equipment storage
	28
C2/BC15 60

C2/BC16 08
	E2 20
	A2 00 00
	BF 64 F8 7F	;load equipment storage
	C5 E0
	F0 0B

	E8
	E0 1E 00
	30 F2

C2/BC2A A2 FF FF
	28
	60

C2/BC2F A9 FF		;set to clear item (255 is NO ITEM)
	9F 64 F8 7F	;save to current equipment storage
	28
	60

Regular Items
C2/BC37 08		;start for regular items
	E2 20
	A2 00 00
C2/BC3D BF 82 F8 7F	;load current item storage
	C9 FF		;see if there is a free slot
	F0 0B
	E8
	E0 1E 00
	30 F2		;jump back to ??
	A2 FF FF
	28
	60
	
C2/BC50 A5 E0
	9F 82 F8 7F	;save to current items storage
	28
C2/BC57 60

C2/BC58 08		;start for regular items
	E2 20
	A2 00 00
C2/BC5E BF 82 F8 7F	;load current item storage
	C5 E0
	F0 0B
	E8
	E0 1E 00
	30 F2

C2/BC6C	A2 FF FF
	28
	60

C2/BC71 A9 FF		;set to clear item (255 is NO ITEM)
	9F 82 F8 7F	;save to current items storage
	28
	60 

Special Items
C2/BC79 08
	E2 20
	A2 00 00
C2/BC7F	BF A0 F8 7F	;load current Special Item storage
	C9 FF
	F0 0B

C2/BC87 E8
	E0 1E 00
	30 F2

C2/BC8D	A2 FF FF
	28
	60

C2/BC92	A5 E0
	9F A0 F8 7F	;save to current Special Item storage
	28
	60

C2/BC9A 08
	E2 20
	A2 00 00
C2/BC7F BF A0 F8 7F	;load current Special Item storage
C2/BCA4 C5 E0
	F0 0B
	E8
	E0 1E 00
	30 F2
	A2 FF FF
	28
	60

	A9 FF		;set to clear item (255 is NO ITEM)
	9F A0 F8 7F	;save to current Special Item storage
	28
	60

----------------------------------------------------------------
???
C2/BCBB 7C BE BC	;JMP call function
	F5 BB
	16 BC
	37 BC
	58 BC
	79 BC
	9A BC
----------------------------------------------------------------
WEAPONS/SPELLS: Weapons [$BCCA] Spells [$BCE6]
C2/BCCA E2 20       SEP #$20                A:0004 X:0004 Y:2500
C2/BCCC AE 50 07    LDX $0750  [$00:0750]   A:0004 X:0004 Y:2500
C2/BCCF 86 C8       STX $C8    [$00:00C8]   A:0004 X:FA80 Y:2500
C2/BCD1 20 0A B3    JSR $B30A  [$C2:B30A]   A:0004 X:FA80 Y:2500 ;load monster's stats
C2/BCD4 85 CF       STA $CF    [$00:00CF]   A:0001 X:FA80 Y:2500
C2/BCD6 A2 2E 07    LDX #$072E              A:0001 X:FA80 Y:2500
C2/BCD9 86 C6       STX $C6    [$00:00C6]   A:0001 X:072E Y:2500
C2/BCDB AD 2C 07    LDA $072C  [$00:072C]   A:0001 X:072E Y:2500
C2/BCDE 85 CD       STA $CD    [$00:00CD]   A:0000 X:072E Y:2500
C2/BCE0 20 55 BD    JSR $BD55  [$C2:BD55]   A:0000 X:072E Y:2500 ; Begin rewriting Stats for Weapon/monster special attacks
C2/BCE3 4C 53 BE    JMP $BE53  [$C2:BE53]   A:0000 X:FA80 Y:0000 ; General Functions

--------------------------------
SPELLS: Spells [$BCE6]
C2/BCE6 E2 20       SEP #$20                A:0006 X:0006 Y:2500
C2/BCE8 AE 50 07    LDX $0750  [$00:0750]   A:0006 X:0006 Y:2500
C2/BCEB 86 C8       STX $C8    [$00:00C8]   A:0006 X:FA80 Y:2500
C2/BCED 20 0A B3    JSR $B30A  [$C2:B30A]   A:0006 X:FA80 Y:2500
C2/BCF0 85 CF       STA $CF    [$00:00CF]   A:0001 X:FA80 Y:2500
C2/BCF2 A2 2E 07    LDX #$072E              A:0001 X:FA80 Y:2500
C2/BCF5 86 C6       STX $C6    [$00:00C6]   A:0001 X:072E Y:2500
C2/BCF7 AD 2C 07    LDA $072C  [$00:072C]   A:0001 X:072E Y:2500
C2/BCFA 85 CD       STA $CD    [$00:00CD]   A:0000 X:072E Y:2500
C2/BCFC 20 B7 BD    JSR $BDB7  [$C2:BDB7]   A:0000 X:072E Y:2500 ; Beginning of Rewriting stats from spell

C2/BCFF A9 00       LDA #$00                A:00FF X:00E0 Y:000A
C2/BD01 EB          XBA                     A:0000 X:00E0 Y:000A
C2/BD02 A5 CC       LDA $CC    [$00:00CC]   A:0000 X:00E0 Y:000A ; Loads byte for SPECIAL FUNCTION (magic only)
C2/BD04 C9 FF       CMP #$FF                A:00FF X:00E0 Y:000A 
C2/BD06 D0 03       BNE $03    [$BD0B]      A:00FF X:00E0 Y:000A 
C2/BD08 4C 53 BE    JMP $BE53  [$C2:BE53]   A:00FF X:00E0 Y:000A ; General Functions

SPECIAL FUNCTION (magic only)
C2/BD0B	0A
C2/BD0C AA
C2/BD0D FC 13 BD	;JSR call function
	C2 20		;set 16-bit mode
	60		;RTS/Return

...C2/BD0D call function...
C2/BD13 02 BF	;scan current HP and show
C2/BD15 25 BF	;... (MISS. Does nothing)
C2/BD17 26 BF	;no damage/heal
C2/BD19 4E BF	;revive + heal 3/4 max HP
C2/BD1B 81 BF	;add Jump power counter to base damage

--------------------------------
ITEMS [$BD1D] (This example uses Rock Candy)
C2/BD1D E2 20       SEP #$20                A:0008 X:0008 Y:2500
C2/BD1F AE 50 07    LDX $0750  [$00:0750]   A:0008 X:0008 Y:2500
C2/BD22 86 C8       STX $C8    [$00:00C8]   A:0008 X:FA80 Y:2500
C2/BD24 20 0A B3    JSR $B30A  [$C2:B30A]   A:0008 X:FA80 Y:2500 ;Load monster's stats
C2/BD27 85 CF       STA $CF    [$00:00CF]   A:0001 X:FA80 Y:2500
C2/BD29 A2 2E 07    LDX #$072E              A:0001 X:FA80 Y:2500
C2/BD2C 86 C6       STX $C6    [$00:00C6]   A:0001 X:072E Y:2500

C2/BD2E 20 F7 BD    JSR $BDF7  [$7F:BDF7]   A:FF00 X:62E0 Y:3240 ;Item functions (Discard or Reuseable)+Status inflictions
C2/BD31 A9 00       LDA #$00                A:FF00 X:62E0 Y:3240
C2/BD33 EB          XBA                     A:FF00 X:62E0 Y:3240
C2/BD34 A5 CC       LDA $CC    [$00:00CC]   A:FF00 X:62E0 Y:3240
C2/BD36 C9 FF       CMP #$FF                A:FF00 X:62E0 Y:3240
C2/BD38 D0 03       BNE $03    [$BD3D]      A:FF00 X:62E0 Y:3240 ;branch if there are any special infliction functions
C2/BD3A 4C 53 BE    JMP $BE53  [$7F:BE53]   A:FF00 X:62E0 Y:3240 ;if not, go to General Functions

Items: Inflict Function
C2/BD3D 0A          ASL A                   A:FF00 X:62E0 Y:3240
C2/BD3E AA          TAX                     A:FF00 X:62E0 Y:3240
C2/BD3F FC 45 BD	;Call function @ #$BD45
	C2 20		;Read code in 16-bit mode
	60		;RTS/Return

C2/BD45 AF BF	;... ???
	11 C0	;Revive
	40 C0	;Restore FP
	74 C0	;__adds attributes to target character
	B2 C0	;Restore HP
	04 C1	;Restore all HP/FP (KeroKeroCola)
	48 C1	;Raise Max FP
	5E C1	;Instant Death (Sheep Attack)

----------------------------------------------------------------
ATTACKS/WEAPONS/SPELLS: Begin Writing Stats
C2/BD55 A0 01 00    LDY #$0001              A:0080 X:0000 Y:0002 ;set to use physical attack/defense of attacker/target
C2/BD58 84 F8       STY $F8    [$00:00F8]   A:0080 X:0000 Y:0002 ;save to F8.
C2/BD5A A5 CF       LDA $CF    [$00:00CF]   A:0080 X:0000 Y:0002 ;if a weapon, jump?
C2/BD5C D0 41       BNE $41    [$BD9F]      A:0080 X:0000 Y:0002 ;if a weapon, jump?


Special Attacks for Monster: test attack flag bits
Runs this check before $BE53 "WEAPONS/SPELLS/ITEMS: General Functions"
C2/BD5E A5 CD       LDA $CD    [$00:00CD]   A:0080 X:0000 Y:0002
C2/BD60 A2 02 00    LDX #$0002              A:0080 X:0000 Y:0002
C2/BD63 A0 E0 00    LDY #$00E0              A:0080 X:0000 Y:0002
C2/BD66 20 CA B3    JSR $B3CA  [$7F:B3CA]   A:0080 X:0000 Y:0002 ;load item stats
C2/BD69 A5 E0       LDA $E0    [$00:00E0]   A:0020 X:00E0 Y:00AE ;load attack flag
C2/BD6B 0A          ASL A                   A:0070 X:00E0 Y:00AE 
C2/BD6C 29 C0       AND #$C0                A:00E0 X:00E0 Y:00AE 
C2/BD6E 05 F8       ORA $F8    [$00:00F8]   A:00C0 X:00E0 Y:00AE ;set attack type (magic, physical, etc)
C2/BD70 85 F8       STA $F8    [$00:00F8]   A:00C1 X:00E0 Y:00AE 
C2/BD72 A5 E0       LDA $E0    [$00:00E0]   A:00C1 X:00E0 Y:00AE ;load attack flag
C2/BD74 89 10       BIT #$10                A:0070 X:00E0 Y:00AE ;check no damage bit
C2/BD76 F0 04       BEQ $04    [$BD7C]      A:0070 X:00E0 Y:00AE ;branch if not set

C2/BD78 A9 01       LDA #$01                A:0070 X:00E0 Y:00AE 
C2/BD7A 14 F8       TRB $F8    [$00:00F8]   A:0001 X:00E0 Y:00AE ;clear damage bit of attack type

C2/BD7C A5 E0       LDA $E0    [$00:00E0]   A:0001 X:00E0 Y:00AE ;load attack flag
C2/BD7E 89 08       BIT #$08                A:0070 X:00E0 Y:00AE ;check 9999 damage bit
C2/BD80 F0 06       BEQ $06    [$BD88]      A:0070 X:00E0 Y:00AE ;branch if not set

C2/BD82 A9 20       LDA #$20                A:0008 X:00E0 Y:00AE 
C2/BD84 04 F8       TSB $F8                 A:0020 X:00E0 Y:00AE ;set 9999 damage bit
C2/BD86 04 F9       TSB $F9                 A:0020 X:00E0 Y:00AE 

C2/BD88 A5 E1       LDA $E1    [$00:00E1]   A:0070 X:00E0 Y:00AE ;load hit %
C2/BD8A 85 FA       STA $FA    [$00:00FA]   A:005A X:00E0 Y:00AE 
C2/BD8C A5 E0       LDA $E0    [$00:00E0]   A:005A X:00E0 Y:00AE ;load attack flag
C2/BD8E 29 07       AND #$07                A:0070 X:00E0 Y:00AE ;isolate attack level bits
C2/BD90 85 FB       STA $FB    [$00:00FB]   A:0000 X:00E0 Y:00AE ;attack level
C2/BD92 64 FD       STZ $FD    [$00:00FD]   A:0000 X:00E0 Y:00AE ;clear elemental properties
C2/BD94 A4 E2       LDY $E2    [$00:00E2]   A:0000 X:00E0 Y:00AE 
C2/BD96 84 FE       STY $FE    [$00:00FE]   A:0000 X:00E0 Y:0020 
C2/BD98 F0 04       BEQ $04    [$BD9E]      A:0000 X:00E0 Y:0020 
C2/BD9A A9 02       LDA #$02                A:0000 X:00E0 Y:0020 ;set Infliction Function as "infliction"
C2/BD9C 04 F9       TSB $F9    [$00:00F9]   A:0002 X:00E0 Y:0020 ;
C2/BD9E 60          RTS                     A:0002 X:00E0 Y:0020 

ALLY: Sets bits if a Weapon
C2/BD9F A9 40       LDA #$40                A:3380 X:3380 Y:2500 ;set bit "is weapon"
C2/BDA1 04 F9       TSB $F9    [$00:00F9]   A:3380 X:3380 Y:2500 
C2/BDA3 A9 63       LDA #$63                A:3380 X:3380 Y:2500 ;set A to 99
C2/BDA5 85 FA       STA $FA    [$00:00FA]   A:3380 X:3380 Y:2500 ;Set hit %
C2/BDA7 64 FB       STZ $FB    [$00:00FB]   A:3380 X:3380 Y:2500
C2/BDA9 A6 C8       LDX $C8    [$00:00C8]   A:3380 X:3380 Y:2500
C2/BDAB BF 4B 00 7E LDA $7E004B,x[$7E:33CB] A:3380 X:3380 Y:2500 ;load weapon's elemental property
C2/BDAF 85 FD       STA $FD    [$00:00FD]   A:3380 X:3380 Y:2500 ;save elemental
C2/BDB1 A0 00 00    LDY #$0000              A:3380 X:3380 Y:2500
C2/BDB4 84 FE       STY $FE    [$00:00FE]   A:3380 X:3380 Y:2500
C2/BDB6 60          RTS                     A:3380 X:3380 Y:2500





----------------------------------------------------------------
SPELLS: Spells [$BCE6] Beginning of Rewriting stats from spell

C2/BDB7 A5 CD       LDA $CD    [$00:00CD]   A:0000 X:072E Y:2480
C2/BDB9 A2 06 00    LDX #$0006              A:0000 X:072E Y:2480
C2/BDBC A0 E0 00    LDY #$00E0              A:0000 X:0006 Y:2480
C2/BDBF 20 CA B3    JSR $B3CA  [$C2:B3CA]   A:0000 X:0006 Y:00E0 ;load item stats

Load statuses for spells
C2/BDC2 A5 E0       LDA $E0    [$00:00E0]   A:00FF X:00E0 Y:000A
C2/BDC4 29 23       AND #$23                A:0002 X:00E0 Y:000A
C2/BDC6 85 F8       STA $F8    [$00:00F8]   A:0002 X:00E0 Y:000A ;Byte 1: special flags
C2/BDC8 A5 EB       LDA $EB    [$00:00EB]   A:0002 X:00E0 Y:000A ;Byte 12: digit display (bit 2 - hide)
C2/BDCA 89 04       BIT #$04                A:0000 X:00E0 Y:000A
C2/BDCC F0 04       BEQ $04    [$BDD2]      A:0000 X:00E0 Y:000A

	A9 40						 ;hide damage numerals
	04 F8						 ;

C2/BDD2 A5 E1       LDA $E1    [$00:00E1]   A:0000 X:00E0 Y:000A
C2/BDD4 29 1F       AND #$1F                A:0000 X:00E0 Y:000A
C2/BDD6 09 80       ORA #$80                A:0000 X:00E0 Y:000A
C2/BDD8 85 F9       STA $F9    [$00:00F9]   A:0080 X:00E0 Y:000A ;Byte 2: attack flags
C2/BDDA A5 E6       LDA $E6    [$00:00E6]   A:0080 X:00E0 Y:000A ;Byte 7: Hit %
C2/BDDC 85 FA       STA $FA    [$00:00FA]   A:0064 X:00E0 Y:000A ;$FA
C2/BDDE A5 E5       LDA $E5    [$00:00E5]   A:0064 X:00E0 Y:000A ;Byte 6: Magic Power
C2/BDE0 85 FB       STA $FB    [$00:00FB]   A:0064 X:00E0 Y:000A ;$FB
C2/BDE2 A5 E4       LDA $E4    [$00:00E4]   A:0064 X:00E0 Y:000A ;Byte 5: element
C2/BDE4 85 FD       STA $FD    [$00:00FD]   A:0080 X:00E0 Y:000A ;$FD
C2/BDE6 A5 E7       LDA $E7    [$00:00E7]   A:0080 X:00E0 Y:000A ;Byte 8: status ailment
C2/BDE8 29 EF       AND #$EF                A:0000 X:00E0 Y:000A ;Loads applicable status bonuses for all ailments (change to FF to include *confuse)
C2/BDEA 85 FE       STA $FE    [$00:00FE]   A:0000 X:00E0 Y:000A ;$FE
C2/BDEC A5 E8       LDA $E8    [$00:00E8]   A:0000 X:00E0 Y:000A ;Byte 9: status enhancement
C2/BDEE 29 78       AND #$78                A:0000 X:00E0 Y:000A ;Loads applicable status bonuses for Attack/Defense/Magic/Mg.Defense Up
C2/BDF0 85 FF       STA $FF    [$00:00FF]   A:0000 X:00E0 Y:000A ;$FF
C2/BDF2 A5 EA       LDA $EA    [$00:00EA]   A:0000 X:00E0 Y:000A ;Byte 11: special function
C2/BDF4 85 CC       STA $CC    [$00:00CC]   A:00FF X:00E0 Y:000A ;special function (like show current HP, jump power, etc...)
C2/BDF6 60          RTS                     A:00FF X:00E0 Y:000A

=================================================================
ITEMS [$BD1D] (This example uses Rock Candy) item functions
C2/BDF7 AE 2C 07    LDX $072C  [$00:072C]   A:0001 X:072E Y:2500 ;current spell to use
C2/BDFA BF 82 F8 7F LDA $7FF882,x[$7F:F882] A:0001 X:0000 Y:2500 ;loads item index number for attributes
C2/BDFE 85 CD       STA $CD    [$00:00CD]   A:0083 X:0000 Y:2500 ;set current item index (Rock Candy in this case)
C2/BE00 A2 04 00    LDX #$0004              A:0083 X:0000 Y:2500
C2/BE03 A0 E0 00    LDY #$00E0              A:0083 X:0004 Y:2500
C2/BE06 20 CA B3    JSR $B3CA  [$C2:B3CA]   A:0083 X:0004 Y:00E0 ;load item stats
C2/BE09 AE 2C 07    LDX $072C  [$00:072C]   A:00FF X:00E0 Y:0946 ;set spell to use
C2/BE0C A5 E0       LDA $E0    [$00:00E0]   A:00FF X:0000 Y:0946 ;loads item attributes
C2/BE0E 89 20       BIT #$20                A:002B X:0000 Y:0946 ;check reuseable bit
C2/BE10 D0 06       BNE $06    [$BE18]      A:002B X:0000 Y:0946 ;branch if set

C2/BE12 A9 FF       LDA #$FF                A:042B X:0004 Y:0A78 ;load empty value
C2/BE14 9F 82 F8 7F STA $7FF882,x[$7F:F886] A:042B X:0004 Y:0A78 ;store to item byte

Load statuses for items
C2/BE18 A5 CD       LDA $CD    [$00:00CD]   A:002B X:0000 Y:0946 ;loads current item index (Rock Candy in this case)
C2/BE1A 8D 2C 07    STA $072C  [$00:072C]   A:0083 X:0000 Y:0946 ;sets current animation to play?
C2/BE1D 9C 2D 07    STZ $072D  [$00:072D]   A:0083 X:0000 Y:0946 ;set memory to 0?
C2/BE20 A9 06       LDA #$06                A:0083 X:0000 Y:0946
C2/BE22 85 F8       STA $F8    [$00:00F8]   A:0006 X:0000 Y:0946 ;F8=Byte 1
C2/BE24 A5 F1       LDA $F1    [$00:00F1]   A:0006 X:0000 Y:0946 ;Byte 18: hide digits
C2/BE26 89 04       BIT #$04                A:0000 X:0000 Y:0946 ;check hide digits bit
C2/BE28 F0 04       BEQ $04    [$BE2E]      A:0000 X:0000 Y:0946 ;jump if not set
	A9 40							 ;begin setting hide digits number
	04 F8							 ;Test bit and set to byte 1
C2/BE2E A5 E1       LDA $E1    [$00:00E1]   A:0000 X:0000 Y:0946 ;Byte 2: status flags/cursor behavior
C2/BE30 29 06       AND #$06                A:0000 X:0000 Y:0946
C2/BE32 09 80       ORA #$80                A:0000 X:0000 Y:0946
C2/BE34 85 F9       STA $F9    [$00:00F9]   A:0080 X:0000 Y:0946
C2/BE36 A9 64       LDA #$64                A:0080 X:0000 Y:0946 ;load 100
C2/BE38 85 FA       STA $FA    [$00:00FA]   A:0064 X:0000 Y:0946 ;save hit %
C2/BE3A A5 EF       LDA $EF    [$00:00EF]   A:0064 X:0000 Y:0946 ;Byte 16: heal/damage amount
C2/BE3C 85 FB       STA $FB    [$00:00FB]   A:00C8 X:0000 Y:0946
C2/BE3E A5 E4       LDA $E4    [$00:00E4]   A:00C8 X:0000 Y:0946 ;Byte 5: element
C2/BE40 85 FD       STA $FD    [$00:00FD]   A:0000 X:0000 Y:0946
C2/BE42 A5 E7       LDA $E7    [$00:00E7]   A:0000 X:0000 Y:0946 ;Byte 8: status ailment
C2/BE44 29 EF       AND #$EF                A:0000 X:0000 Y:0946 ;Loads applicable status bonuses for all ailments (change to FF to be able to use all ailments)
C2/BE46 85 FE       STA $FE    [$00:00FE]   A:0000 X:0000 Y:0946
C2/BE48 A5 E8       LDA $E8    [$00:00E8]   A:0000 X:0000 Y:0946 ;Byte 9: status enhancement
C2/BE4A 29 78       AND #$78                A:0000 X:0000 Y:0946 ;Loads applicable status bonuses for Attack/Defense/Magic/Mg.Defense Up
C2/BE4C 85 FF       STA $FF    [$00:00FF]   A:0000 X:0000 Y:0946
C2/BE4E A5 F0       LDA $F0    [$00:00F0]   A:0000 X:0000 Y:0946 ;Byte 17: attack flags
C2/BE50 85 CC       STA $CC    [$00:00CC]   A:00FF X:0000 Y:0946
C2/BE52 60          RTS                     A:00FF X:0000 Y:0946

=================================================================
WEAPONS/SPELLS/ITEMS: General Functions
C2/BE53 A4 C6       LDY $C6    [$00:00C6]   A:0000 X:FA80 Y:0000
C2/BE55 C8          INY                     A:0000 X:FA80 Y:0730
C2/BE56 C8          INY                     A:0000 X:FA80 Y:0731
C2/BE57 B6 00       LDX $00,y  [$00:0732]   A:0000 X:FA80 Y:0732
C2/BE59 D0 03       BNE $03    [$BE5E]      A:0000 X:0000 Y:0732

C2/BE5B 4C FF BE    JMP $BEFF  [$C2:BEFF]   A:0000 X:0000 Y:0732 ;Sets to 16-bit mode & end/RTS

C2/BE5E	84 C6
C2/BE60 86 CA
C2/BE62 20 0A B3						 ; load monster stats
C2/BE65 85 CE       STA $CE    [$00:00CE]   A:0001 X:FA80 Y:0730 
C2/BE67 BF 44 00 7E LDA $7E0044,x[$7E:FAC4] A:0001 X:FA80 Y:0730 
C2/BE6B 29 3F       AND #$3F                A:0000 X:FA80 Y:0730 
C2/BE6D 9F 44 00 7E STA $7E0044,x[$7E:FAC4] A:0000 X:FA80 Y:0730 
C2/BE71 A9 00       LDA #$00                A:0000 X:FA80 Y:0730 
C2/BE73 9F 45 00 7E STA $7E0045,x[$7E:FAC5] A:0000 X:FA80 Y:0730 
C2/BE77 9F 46 00 7E STA $7E0046,x[$7E:FAC6] A:0000 X:FA80 Y:0730 
C2/BE7B A5 F8       LDA $F8    [$00:00F8]   A:0000 X:FA80 Y:0730 
C2/BE7D 89 40       BIT #$40                A:0040 X:FA80 Y:0730 ;check if hiding damage numerals
C2/BE7F F0 0A       BEQ $0A    [$BE8B]      A:0040 X:FA80 Y:0730 

C2/BE81 BF 44 00 7E LDA $7E0044,x[$7E:FAC4] A:0040 X:FA80 Y:0730 
C2/BE85 09 40       ORA #$40                A:0000 X:FA80 Y:0730 ;set Hide Numerals
C2/BE87 9F 44 00 7E STA $7E0044,x[$7E:FAC4] A:0040 X:FA80 Y:0730 

C2/BE8B 20 9E C1    JSR $C19E  [$C2:C19E]   A:0040 X:FA80 Y:0730 ;Evade/Magic Evade/Evasion
C2/BE8E 85 CC       STA $CC    [$00:00CC]   A:0001 X:FC00 Y:0730
C2/BE90 D0 12       BNE $12    [$BEA4]      A:0001 X:FC00 Y:0730

C2/BE92 A5 F9
C2/BE94 89 08							 ;??? 9999 damage?
C2/BE96 F0 BB       BEQ $BB    [$BE53]

C2/BE98 A6 CA       LDX $CA    [$00:00CA]   A:08FE X:2D00 Y:2D00
C2/BE9A BF 44 00 7E LDA $7E0044,x[$7E:2D44] A:08FE X:2D00 Y:2D00
C2/BE9E 29 BF       AND #$BF                A:08FE X:2D00 Y:2D00
C2/BEA0 9F 44 00 7E STA $7E0044,x[$7E:2D44] A:08FE X:2D00 Y:2D00

C2/BEA4 A6 CA       LDX $CA    [$00:00CA]   A:0001 X:FC00 Y:0730
C2/BEA6 BF 44 00 7E LDA $7E0044,x[$7E:FC44] A:0001 X:FC00 Y:0730
C2/BEAA 09 80       ORA #$80                A:0000 X:FC00 Y:0730
C2/BEAC 9F 44 00 7E STA $7E0044,x[$7E:FC44] A:0080 X:FC00 Y:0730
C2/BEB0 A5 F9       LDA $F9    [$00:00F9]   A:0080 X:FC00 Y:0730
C2/BEB2 89 01       BIT #$01                A:0040 X:FC00 Y:0730 ;if healing, jump
C2/BEB4 D0 10       BNE $10    [$BEC6]      A:0040 X:FC00 Y:0730

C2/BEB6 BF 40 00 7E LDA $7E0040,x[$7E:FC40] A:0040 X:FC00 Y:0730
C2/BEBA 89 80       BIT #$80                A:0000 X:FC00 Y:0730 ;check invincible/invulnerable/Red Essence bit
C2/BEBC D0 95       BNE $95    [$BE53]      A:0000 X:FC00 Y:0730

C2/BEBE BF 41 00 7E LDA $7E0041,x[$7E:FC41] A:0000 X:FC00 Y:0730
C2/BEC2 89 01       BIT #$01                A:0000 X:FC00 Y:0730 ;check monster invulnerability bit
C2/BEC4 D0 8D       BNE $8D    [$BE53]      A:0000 X:FC00 Y:0730

C2/BEC6 20 F4 C1    JSR $C1F4  [$C2:C1F4]   A:0000 X:FC00 Y:0730 ;SPELLS/WEAPONS: Damage calculation

C2/BEC9 A5 F9       LDA $F9    [$00:00F9]   A:08FE X:2D00 Y:2D00
C2/BECB 89 06       BIT #$06                A:08FE X:2D00 Y:2D00 ;check if nullifying or inflicting
C2/BECD F0 0C       BEQ $0C    [$BEDB]      A:08FE X:2D00 Y:2D00
C2/BECF 89 04       BIT #$04                A:08FE X:2D00 Y:2D00 ;check if nullifying
C2/BED1 D0 05       BNE $05    [$BED8]      A:08FE X:2D00 Y:2D00
C2/BED3 20 8B C4    JSR $C48B  [$C2:C48B]   A:08FE X:2D00 Y:2D00 ;loads status inflict instructions
C2/BED6 80 03       BRA $03    [$BEDB]      A:08FE X:2D00 Y:2D00
C2/BED8 20 CF C4    JSR $C4CF  [$C2:C4CF]   A:08FE X:2D00 Y:2D00 ;loads status nullify instructions
C2/BEDB 20 5E C5    JSR $C55E  [$C2:C55E]   A:08FE X:2D00 Y:2D00 ;ATTACKS/SPELLS/WEAPONS/ITEMS: Damage or Healing

check if monster dead
C2/BEDE A4 C0       LDY $C0    [$00:00C0]   A:0000 X:FC00 Y:0730 ;load current HP
C2/BEE0 D0 1A       BNE $1A    [$BEFC]      A:0000 X:FC00 Y:0000 ;branch if not 0
C2/BEE2 A5 CE       LDA $CE    [$00:00CE]   A:0000 X:FC00 Y:0000 
C2/BEE4 D0 0A       BNE $0A    [$BEF0]      A:0000 X:FC00 Y:0000 
C2/BEE6 A6 CA       LDX $CA    [$00:00CA]   A:0000 X:FC00 Y:0000 
C2/BEE8 BF 1D 00 7E LDA $7E001D,x[$7E:FC1D] A:0000 X:FC00 Y:0000 ;load special attribute
C2/BEEC 89 01       BIT #$01                A:0000 X:FC00 Y:0000 ;check hold bit (do not remove if HP < 0)
C2/BEEE D0 0C       BNE $0C    [$BEFC]      A:0000 X:FC00 Y:0000 ;branch if set
C2/BEF0 20 C8 C5    JSR $C5C8  [$C2:C5C8]   A:0000 X:FC00 Y:0000 ;JSR for monster defeated

check if all monsters dead; if all dead, do not load flower bonus

C2/BEF3 A5 F9       LDA $F9    [$00:00F9]   A:0003 X:0010 Y:000E ;load all mortal statuses
C2/BEF5 89 40       BIT #$40                A:0040 X:0010 Y:000E ;check death bit
C2/BEF7 F0 03       BEQ $03    [$BEFC]      A:0040 X:0010 Y:000E ;branch if not set
C2/BEF9 20 A6 C6    JSR $C6A6  [$C2:C6A6]   A:0040 X:0010 Y:000E ;load flower bonus
C2/BEFC 4C 53 BE

C2/BEFF C2 20       REP #$20                A:0000 X:0000 Y:0732
C2/BF01 60          RTS                     A:0000 X:0000 Y:0732

=================================================================
C2/BF9F 20 53 BE	
=================================================================
ITEMS: Revive
C2/C011 A4 C6       LDY $C6    [$00:30C6]   A:3000 X:0000 Y:7024
C2/C013 C8          INY                     A:3000 X:0000 Y:7024
C2/C014 C8          INY                     A:3000 X:0000 Y:7024
C2/C015 B6 00       LDX $00,y  [$00:A024]   A:3000 X:0000 Y:7024
C2/C017 86 CA       STX $CA    [$00:30CA]   A:3000 X:0000 Y:7024
C2/C019 20 0A B3    JSR $B30A  [$7F:B30A]   A:3000 X:0000 Y:7024 ; load monster stats
C2/C01C 85 CE       STA $CE    [$00:30CE]   A:3000 X:0000 Y:7024
C2/C01E 20 41 C6    JSR $C641  [$7F:C641]   A:3000 X:0000 Y:7024 ;Revive
C2/C021 BF 44 00 7E LDA $7E0044,x[$7E:0044] A:3000 X:0000 Y:7024
C2/C025 29 BF       AND #$BF                A:3000 X:0000 Y:7024
C2/C027 09 80       ORA #$80                A:3000 X:0000 Y:7024
C2/C029 9F 44 00 7E STA $7E0044,x[$7E:0044] A:3000 X:0000 Y:7024
C2/C02D BF 11 00 7E LDA $7E0011,x[$7E:0011] A:3000 X:0000 Y:7024
C2/C031 9F 45 00 7E STA $7E0045,x[$7E:0045] A:3000 X:0000 Y:7024
C2/C035 BF 12 00 7E LDA $7E0012,x[$7E:0012] A:3000 X:0000 Y:7024
C2/C039 09 80       ORA #$80                A:3000 X:0000 Y:7024
C2/C03B 9F 46 00 7E STA $7E0046,x[$7E:0046] A:3000 X:0000 Y:7024
C2/C03F 60          RTS                     A:3000 X:0000 Y:7024

=================================================================
ITEMS: Restore FP
C2/C040 A4 C6       LDY $C6    [$00:30C6]   A:3000 X:0000 Y:7024
C2/C042 C8          INY                     A:3000 X:0000 Y:7024
C2/C043 C8          INY                     A:3000 X:0000 Y:7024
C2/C044 B6 00       LDX $00,y  [$00:A024]   A:3000 X:0000 Y:7024
C2/C046 BF 44 00 7E LDA $7E0044,x[$7E:0044] A:3000 X:0000 Y:7024
C2/C04A 29 BF       AND #$BF                A:3000 X:0000 Y:7024
C2/C04C 09 80       ORA #$80                A:3000 X:0000 Y:7024
C2/C04E 9F 44 00 7E STA $7E0044,x[$7E:0044] A:3000 X:0000 Y:7024
C2/C052 AF 0C FA 7E LDA $7EFA0C[$7E:FA0C]   A:3000 X:0000 Y:7024
C2/C056 18          CLC                     A:3000 X:0000 Y:7024
C2/C057 65 FB       ADC $FB    [$00:30FB]   A:3000 X:0000 Y:7024
C2/C059 CF 0D FA 7E CMP $7EFA0D[$7E:FA0D]   A:3000 X:0000 Y:7024
C2/C05D 30 04       BMI $04    [$C063]      A:3000 X:0000 Y:7024
C2/C05F AF 0D FA 7E LDA $7EFA0D[$7E:FA0D]   A:3000 X:0000 Y:7024
C2/C063 8F 0C FA 7E STA $7EFA0C[$7E:FA0C]   A:3000 X:0000 Y:7024
C2/C067 A5 FB       LDA $FB    [$00:30FB]   A:3000 X:0000 Y:7024
C2/C069 9F 45 00 7E STA $7E0045,x[$7E:0045] A:3000 X:0000 Y:7024
C2/C06D A9 80       LDA #$80                A:3000 X:0000 Y:7024
C2/C06F 9F 46 00 7E STA $7E0046,x[$7E:0046] A:3000 X:0000 Y:7024
C2/C073 60          RTS                     A:3000 X:0000 Y:7024
C2/C074 A4 C6       LDY $C6    [$00:30C6]   A:3000 X:0000 Y:7024
C2/C076 C8          INY                     A:3000 X:0000 Y:7024
C2/C077 C8          INY                     A:3000 X:0000 Y:7024
C2/C078 B6 00       LDX $00,y  [$00:A024]   A:3000 X:0000 Y:7024
C2/C07A A5 E9       LDA $E9    [$00:30E9]   A:3000 X:0000 Y:7024
C2/C07C 18          CLC                     A:3000 X:0000 Y:7024
C2/C07D 7F 15 00 7E ADC $7E0015,x[$7E:0015] A:3000 X:0000 Y:7024
C2/C081 9F 15 00 7E STA $7E0015,x[$7E:0015] A:3000 X:0000 Y:7024
C2/C085 A5 EA       LDA $EA    [$00:30EA]   A:3000 X:0000 Y:7024
C2/C087 18          CLC                     A:3000 X:0000 Y:7024
C2/C088 7F 16 00 7E ADC $7E0016,x[$7E:0016] A:3000 X:0000 Y:7024
C2/C08C 9F 16 00 7E STA $7E0016,x[$7E:0016] A:3000 X:0000 Y:7024
C2/C090 A5 EB       LDA $EB    [$00:30EB]   A:3000 X:0000 Y:7024
C2/C092 18          CLC                     A:3000 X:0000 Y:7024
C2/C093 7F 17 00 7E ADC $7E0017,x[$7E:0017] A:3000 X:0000 Y:7024
C2/C097 9F 17 00 7E STA $7E0017,x[$7E:0017] A:3000 X:0000 Y:7024
C2/C09B A5 EC       LDA $EC    [$00:30EC]   A:3000 X:0000 Y:7024
C2/C09D 18          CLC                     A:3000 X:0000 Y:7024
C2/C09E 7F 18 00 7E ADC $7E0018,x[$7E:0018] A:3000 X:0000 Y:7024
C2/C0A2 9F 18 00 7E STA $7E0018,x[$7E:0018] A:3000 X:0000 Y:7024
C2/C0A6 A5 ED       LDA $ED    [$00:30ED]   A:3000 X:0000 Y:7024
C2/C0A8 18          CLC                     A:3000 X:0000 Y:7024
C2/C0A9 7F 19 00 7E ADC $7E0019,x[$7E:0019] A:3000 X:0000 Y:7024
C2/C0AD 9F 19 00 7E STA $7E0019,x[$7E:0019] A:3000 X:0000 Y:7024
C2/C0B1 60          RTS                     A:3000 X:0000 Y:7024


=================================================================
ITEMS: Restore HP
NOTE: Final calculation starts at Direct Page $FB

C2/C0B2 A4 C6       LDY $C6    [$00:00C6]   A:0004 X:E5D0 Y:34AC
C2/C0B4 C8          INY                     A:0004 X:E5D0 Y:34AC
C2/C0B5 C8          INY                     A:0004 X:E5D0 Y:34AC
C2/C0B6 B6 00       LDX $00,y  [$00:34AC]   A:0004 X:E5D0 Y:34AC
C2/C0B8 F0 49       BEQ $49    [$C103]      A:0004 X:E5D0 Y:34AC

C2/C0BA 84 C6       STY $C6    [$00:00C6]   A:0004 X:E5D0 Y:34AC
C2/C0BC 86 CA       STX $CA    [$00:00CA]   A:0004 X:E5D0 Y:34AC
C2/C0BE BF 44 00 7E LDA $7E0044,x[$7E:E614] A:0004 X:E5D0 Y:34AC
C2/C0C2 29 BF       AND #$BF                A:0004 X:E5D0 Y:34AC
C2/C0C4 09 80       ORA #$80                A:0004 X:E5D0 Y:34AC
C2/C0C6 9F 44 00 7E STA $7E0044,x[$7E:E614] A:0004 X:E5D0 Y:34AC
C2/C0CA A5 F9       LDA $F9    [$00:00F9]   A:0004 X:E5D0 Y:34AC ; loads Item's status flags
C2/C0CC 89 06       BIT #$06                A:0004 X:E5D0 Y:34AC ; checks if meant to inflict (bit 1) or nullify (bit 2)
C2/C0CE F0 0C       BEQ $0C    [$C0DC]      A:0004 X:E5D0 Y:34AC
C2/C0D0 89 04       BIT #$04                A:0004 X:E5D0 Y:34AC ; checks if nullify
C2/C0D2 D0 05       BNE $05    [$C0D9]      A:0004 X:E5D0 Y:34AC
C2/C0D4 20 8B C4    JSR $C48B  [$C0:C48B]   A:0004 X:E5D0 Y:34AC ; loads status inflict instructions
C2/C0D7 80 03       BRA $03    [$C0DC]      A:0004 X:E5D0 Y:34AC
C2/C0D9 20 CF C4    JSR $C4CF  [$C0:C4CF]   A:0004 X:E5D0 Y:34AC ; loads status nullify instructions
C2/C0DC C2 20       REP #$20                A:0004 X:E5D0 Y:34AC ; enable 16-bit
C2/C0DE A5 FB       LDA $FB    [$00:00FB]   A:0004 X:E5D0 Y:34AC ; load infliction amount
C2/C0E0 29 FF 00    AND #$00FF              A:0004 X:E5D0 Y:34AC
C2/C0E3 18          CLC                     A:0004 X:E5D0 Y:34AC
C2/C0E4 7F 11 00 7E ADC $7E0011,x[$7E:E5E1] A:0004 X:E5D0 Y:34AC
C2/C0E8 DF 13 00 7E CMP $7E0013,x[$7E:E5E3] A:0004 X:E5D0 Y:34AC ; compare to max HP
C2/C0EC 30 04       BMI $04    [$C0F2]      A:0004 X:E5D0 Y:34AC
C2/C0EE BF 13 00 7E LDA $7E0013,x[$7E:E5E3] A:0004 X:E5D0 Y:34AC
C2/C0F2 9F 11 00 7E STA $7E0011,x[$7E:E5E1] A:0004 X:E5D0 Y:34AC
C2/C0F6 A5 FB       LDA $FB    [$00:00FB]   A:0004 X:E5D0 Y:34AC
C2/C0F8 09 00 80    ORA #$8000              A:0004 X:E5D0 Y:34AC
C2/C0FB 9F 45 00 7E STA $7E0045,x[$7E:E615] A:0004 X:E5D0 Y:34AC
C2/C0FF E2 20       SEP #$20                A:0004 X:E5D0 Y:34AC
C2/C101 80 AF       BRA $AF    [$C0B2]      A:0004 X:E5D0 Y:34AC
C2/C103 60          RTS                     A:0004 X:E5D0 Y:34AC


=================================================================
ITEMS: Restore all HP/FP (KeroKeroCola)
C2/C104 C2 20       REP #$20                A:0000 X:0000 Y:1484
C2/C106 A2 00 00    LDX #$0000              A:0000 X:0000 Y:1484
C2/C109 9B          TXY                     A:0000 X:0000 Y:1484
C2/C10A BF EA A1 C2 LDA $C2A1EA,x[$C2:A1EA] A:0000 X:0000 Y:1484
C2/C10E AA          TAX                     A:0000 X:0000 Y:1484
C2/C10F BF 00 00 7E LDA $7E0000,x[$7E:0000] A:0000 X:0000 Y:1484
C2/C113 29 C0 00    AND #$00C0              A:0000 X:0000 Y:1484
C2/C116 D0 1D       BNE $1D    [$C135]      A:0000 X:0000 Y:1484
C2/C118 BF 13 00 7E LDA $7E0013,x[$7E:0013] A:0000 X:0000 Y:1484
C2/C11C 9F 11 00 7E STA $7E0011,x[$7E:0011] A:0000 X:0000 Y:1484
C2/C120 09 00 80    ORA #$8000              A:0000 X:0000 Y:1484
C2/C123 9F 45 00 7E STA $7E0045,x[$7E:0045] A:0000 X:0000 Y:1484
C2/C127 BF 44 00 7E LDA $7E0044,x[$7E:0044] A:0000 X:0000 Y:1484
C2/C12B 29 BF FF    AND #$FFBF              A:0000 X:0000 Y:1484
C2/C12E 09 80 00    ORA #$0080              A:0000 X:0000 Y:1484
C2/C131 9F 44 00 7E STA $7E0044,x[$7E:0044] A:0000 X:0000 Y:1484
C2/C135 BB          TYX                     A:0000 X:0000 Y:1484
C2/C136 E8          INX                     A:0000 X:0000 Y:1484
C2/C137 E8          INX                     A:0000 X:0000 Y:1484
C2/C138 E0 05 00    CPX #$0005              A:0000 X:0000 Y:1484
C2/C13B 30 CC       BMI $CC    [$C109]      A:0000 X:0000 Y:1484
C2/C13D E2 20       SEP #$20                A:0000 X:0000 Y:1484
C2/C13F AF 0D FA 7E LDA $7EFA0D[$7E:FA0D]   A:0000 X:0000 Y:1484
C2/C143 8F 0C FA 7E STA $7EFA0C[$7E:FA0C]   A:0000 X:0000 Y:1484
C2/C147 60          RTS                     A:0000 X:0000 Y:1484

=================================================================
ITEMS: Raise Max FP
C2/C148 AF 0D FA 7E	;Load max FP
C2/C14C 18		;Begin addition
C2/C14D 65 FB		;Add amount
C2/C14F C9 63		;Compare 99
C2/C151 30 02		;Jump if below 99
C2/C153 A9 63		;Set Accumulator to 99
C2/C155 8F 0D FA 7E	;store to max FP
C2/C159 8F 0C FA 7E	;store to current FP

=================================================================
Evade/Magic Evade/Evasion
DISASSEMBLER NOTE: This code first checks to see if hit chance is 100%, and if yes, skips this whole part about evasion.
		   If not 100%, THEN it calculates evasion, and if the monster doesn't evade, THEN it calculates hit chance of the attack!
		   What is a workout.

C2/C19E A6 CA       LDX $CA    [$00:00CA]   A:0001 X:FC80 Y:0730 
C2/C1A0 A5 FA       LDA $FA    [$00:00FA]   A:0001 X:FC80 Y:0730 ;load Hit %
C2/C1A2 C9 64       CMP #$64                A:0063 X:FC80 Y:0730 ;check if 100%
C2/C1A4 D0 03       BNE $03    [$C1A9]      A:0063 X:FC80 Y:0730 ;branch if not 100%

C2/C1A6 A9 01       LDA #$01
C2/C1A8 60          RTS

C2/C1A9 A5 F8       LDA $F8    [$00:00F8]   A:0063 X:FC80 Y:0730 ;load attack type (spell)
C2/C1AB 89 20       BIT #$20                A:0001 X:FC80 Y:0730 ;check if checking for mortality protection
C2/C1AD F0 0B       BEQ $0B    [$C1BA]      A:0001 X:FC80 Y:0730 ;branch if not set

C2/C1AF BF 41 00 7E LDA $7E0041,x[$7E:FCC1] A:0001 X:FC80 Y:0730 ;load special defense
C2/C1B3 89 02       BIT #$02                A:0000 X:FC80 Y:0730 ;check mortality protection bit of target
C2/C1B5 F0 03       BEQ $03    [$C1BA]      A:0000 X:FC80 Y:0730 ;branch if not set

C2/C1B7 A9 00       LDA #$00                A:0000 X:FC80 Y:0730 ;set miss flag
C2/C1B9 60          RTS                     A:0000 X:FC80 Y:0730 

C2/C1BA A5 CE       LDA $CE    [$00:00CE]   A:0001 X:FC80 Y:0730 ;loads ???
C2/C1BC D0 2A       BNE $2A    [$C1E8]      A:0000 X:FC80 Y:0730 ;...jumps to duplicate hit chance code...
C2/C1BE A5 F8       LDA $F8    [$00:00F8]   A:0000 X:FC80 Y:0730 ;load attack type
C2/C1C0 89 01       BIT #$01                A:0001 X:FC80 Y:0730 ;check if physical attack
C2/C1C2 F0 06       BEQ $06    [$C1CA]      A:0001 X:FC80 Y:0730 ;branch if magic attack

C2/C1C4 BF 1B 00 7E LDA $7E001B,x[$7E:FC9B] A:0001 X:FC80 Y:0730 ;load Evade %
C2/C1C8 80 04       BRA $04    [$C1CE]      A:0000 X:FC80 Y:0730
 
C2/C1CA BF 1C 00 7E LDA $7E001C,x[$7E:FC9C] A:0000 X:FC80 Y:0730 ;load Magic Evade %

C2/C1CE 85 DA       STA $DA    [$00:00DA]   A:0000 X:FC80 Y:0730 ;set to evade%
C2/C1D0 A9 63       LDA #$63                A:0000 X:FC80 Y:0730 ;value 99
C2/C1D2 85 DB       STA $DB    [$00:00DB]   A:0063 X:FC80 Y:0730 ;set value to 99 (out of 99)
C2/C1D4 20 F2 B2    JSR $B2F2  [$C2:B2F2]   A:0063 X:FC80 Y:0730 ;generate random number
C2/C1D7 F0 03       BEQ $03    [$C1DC]      A:0000 X:FC00 Y:0730

	 A9 00							 ;set miss flag
	 60

C2/C1DC A5 FA       LDA $FA    [$00:00FA]   A:0000 X:FC00 Y:0730
C2/C1DE 85 DA       STA $DA    [$00:00DA]   A:0063 X:FC00 Y:0730
C2/C1E0 A9 63       LDA #$63                A:0063 X:FC00 Y:0730
C2/C1E2 85 DB       STA $DB    [$00:00DB]   A:0063 X:FC00 Y:0730
C2/C1E4 20 F2 B2    JSR $B2F2  [$C2:B2F2]   A:0063 X:FC00 Y:0730  ;generate random number
	60

C2/C1E8 A5 FA
	85 DA
	A9 63
	85 DB
	20 F2 B2
	60

=================================================================
SPELLS/WEAPONS: Damage calculation
C2/C1F4 A5 F8       LDA $F8    [$00:00F8]   A:0000 X:FC00 Y:0730
C2/C1F6 10 06       BPL $06    [$C1FE]      A:0001 X:FC00 Y:0730

	A0 00 00
	84 C2
	60

C2/C1FE A5 F9       LDA $F9    [$00:00F9]   A:0001 X:FC00 Y:0730
C2/C200 89 28       BIT #$28                A:0040 X:FC00 Y:0730 ;check for 9999 damage bits (for some reason it's two different bits?)
C2/C202 F0 0D       BEQ $0D    [$C211]      A:0040 X:FC00 Y:0730
	A5 CC
	F0 06
	A0 0F 27
	84 C2
	60
	4C 47 C2 

C2/C211 A5 F9       LDA $F9    [$00:00F9]   A:0040 X:FC00 Y:0730
C2/C213 89 10       BIT #$10                A:0040 X:FC00 Y:0730 ;??? unknown attribute that divides
C2/C215 F0 30       BEQ $30    [$C247]      A:0040 X:FC00 Y:0730
	A6 CA
	89 01
	F0 0C
	BF 13 00 7E
	85 D0
	BF 14 00 7E
	80 0A
	BF 11 00 7E
	85 D0
	BF 12 00 7E
	85 D1
	A5 FB
	85 D4
	A2 C2 00
	20 3F B3
	A9 10
	20 2E B3
	4C 9C C2

C2/C247 20 AA C2    JSR $C2AA  [$C2:C2AA]   A:0040 X:FC00 Y:0730 ; Calculates defense
C2/C24A A5 F8       LDA $F8    [$00:00F8]   A:0000 X:FA80 Y:0730 ; load Magic special flags
C2/C24C 89 02       BIT #$02                A:0001 X:FA80 Y:0730 ; check ignore defense bit
C2/C24E D0 43       BNE $43    [$C293]      A:0001 X:FA80 Y:0730 ; jump to $C293

C2/C250 A5 F9       LDA $F9    [$00:00F9]   A:0001 X:FA80 Y:0730
C2/C252 89 40       BIT #$40                A:0040 X:FA80 Y:0730 ;checks if using weapon bit
C2/C254 F0 29       BEQ $29    [$C27F]      A:0040 X:FA80 Y:0730 ;If not set, jumps to $C27F
C2/C256 A6 C8       LDX $C8    [$00:00C8]   A:0040 X:FA80 Y:0730
C2/C258 BF 7A 00 7E LDA $7E007A,x[$7E:FAFA] A:0040 X:FA80 Y:0730 ;load RNG number for weapon
C2/C25C 85 D6       STA $D6    [$00:00D6]   A:0000 X:FA80 Y:0730
C2/C25E 0A          ASL A                   A:0000 X:FA80 Y:0730
C2/C25F 85 DB       STA $DB    [$00:00DB]   A:0000 X:FA80 Y:0730
C2/C261 64 DA       STZ $DA    [$00:00DA]   A:0000 X:FA80 Y:0730
C2/C263 20 DD B2    JSR $B2DD  [$C2:B2DD]   A:0000 X:FA80 Y:0730 ;random number generator

damage modifier; base damage starts with attacker's attack power

C2/C266 85 D8       STA $D8    [$00:00D8]   A:003A X:FB80 Y:0730 ;attack range RNG number
C2/C268 64 D7       STZ $D7    [$00:00D7]   A:003A X:FB80 Y:0730 
C2/C26A 64 D9       STZ $D9    [$00:00D9]   A:003A X:FB80 Y:0730 

C2/C26C C2 20       REP #$20                A:003A X:FB80 Y:0730 
C2/C26E A5 C2       LDA $C2    [$00:00C2]   A:003A X:FB80 Y:0730 ;load base damage (attack power)
C2/C270 38          SEC                     A:013D X:FB80 Y:0730 
C2/C271 E5 D6       SBC $D6    [$00:00D6]   A:013D X:FB80 Y:0730 ;subtract attack range value
C2/C273 10 03       BPL $03    [$C278]      A:0115 X:FB80 Y:0730 ;branch if greater than 0

C2/C278 18          CLC                     A:0115 X:FB80 Y:0730 
C2/C279 65 D8       ADC $D8    [$00:00D8]   A:0115 X:FB80 Y:0730 ;add RNG number from attack range (00 - AR*2)
C2/C27B 85 C2       STA $C2    [$00:00C2]   A:014F X:FB80 Y:0730 ;store as current damage

C2/C27D E2 20       SEP #$20                A:014F X:FB80 Y:0730 
C2/C27F C2 20       REP #$20                A:014F X:FB80 Y:0730 
C2/C281 A5 C2       LDA $C2    [$00:00C2]   A:014F X:FB80 Y:0730 ;load current damage
C2/C283 F0 0C       BEQ $0C    [$C291]      A:014F X:FB80 Y:0730 ;branch if at 0
C2/C285 38          SEC                     A:014F X:FB80 Y:0730 
C2/C286 E5 C4       SBC $C4    [$00:00C4]   A:014F X:FB80 Y:0730 ;subtract monster's DEF power
C2/C288 F0 02       BEQ $02    [$C28C]      A:00CD X:FB80 Y:0730 ;branch if at 0
C2/C28A 10 03       BPL $03    [$C28F]      A:00CD X:FB80 Y:0730 ;branch if greater than 0

C2/C28C A9 01 00    LDA #$0001              A:00CD X:FB80 Y:0730

C2/C28F 85 C2       STA $C2    [$00:00C2]   A:00CD X:FB80 Y:0730 ;store as current damage
C2/C291 E2 20       SEP #$20                A:00CD X:FB80 Y:0730 
C2/C293 20 08 C3    JSR $C308  [$C2:C308]   A:00CD X:FB80 Y:0730 ;multiplying damage instructions (applicable only if attack is from a monster)
C2/C296 20 82 C3						 ;Modifies damage based on ailments/buffs
C2/C299 20 22 C4						 ;element resist instructions
C2/C29C C2 20
C2/C29E A9 0F 27						 ;Set A to 9999
C2/C2A1 C5 C2							 ;compare final damage to 9999
C2/C2A3 10 02							 ;If final damage under 9999, jump
C2/C2A5 85 C2							 ;Set A as final damage (9999)
C2/C2A7 E2 20
C2/C2A9 60

=================================================================
SPELLS/WEAPONS: Calculates defense

Check whether if spell using Mg.Defense or Phys.Defense to calculate final damage
C2/C2AA A6 CA		 ;Load monster's properties
C2/C2AC A5 F8		 ;
C2/C2AE 89 01
C2/C2B0 D0 0E		 ;jumps to $C2C0
C2/C2B2 BF 78 00 7E	 ;mg.defense byte 1
C2/C2B6 85 C4
C2/C2B8 BF 79 00 7E	 ;mg.defense byte 2
C2/C2BC 85 C5
C2/C2BE 80 0C

C2/C2C0 BF 74 00 7E	 ;phys.defense byte 1
C2/C2C4 85 C4
C2/C2C6 BF 75 00 7E	 ;phys.defense byte 2
C2/C2CA 85 C5
	
C2/C2CC A6 C8		 ;load ally's properties
C2/C2CE A5 F8
C2/C2D0 89 01 		 ;checks bit 0 for check attack/defense of attacker/target
C2/C2D2 D0 27		 ;Jump to $C2FB

	A5 FB		 ;spell's power
	F0 18		 ;Compares to 0. If spell power is 0, branch to $C2F0

	A5 F8		 ;
	89 04		 ;checks bit 2 for "is item" bit
	D0 18		 ;jumps to $C2F6
	BF 76 00 7E
	18
	65 FB
	85 C2
	BF 77 00 7E
	69 00
	85 C3
	60

C2/C2F0 A0 00 00	 ;Loads 0
	84 C2		 ;set final damage to 0
	60

C2/C2F6 A4 FB		 ;loads spell's power
	84 C2		 ;sets it to final damage
	60

C2/C2FB BF 72 00 7E
	85 C2
	BF 73 00 7E
	85 C3
C2/C307 60

=================================================================

MONSTER: Attacks Multiplier
C2/C308 A5 F9       LDA $F9    [$00:00F9]   A:0001 X:FC00 Y:0730
C2/C30A 10 01       BPL $01    [$C30D]      A:0082 X:FC00 Y:0730
C2/C30C 60          RTS                     A:0082 X:FC00 Y:0730

	A9 00
	EB
	A5 FB
	29 07
	0A
	AA

C2/C316 7C 19 C3	 ;Begin pointer
	29 C3		 ;x1
	2A C3		 ;x1.5
	37 C3		 ;x2
	41 C3		 ;x4
	4C C3		 ;x8
	58 C3		 ;x16
	65 C3		 ;x32
	73 C3		 ;x64

C2/C381 60		 ;end

=================================================================
Modifies damage based on ailments/buffs
DISASSEMBLER NOTE: Due to how this is programmed, the following occur in damage modifiers from ailments/buffs in play.
1) Fear and Attack Up! status only calculated once (they do not stack, resulting in only x1.5 damage)
2) Mushroom, Defend command, and Defense Up! only calculated once (they do not stack, resulting in only 50% damage reduction)

Check if Damage or Heal
C2/C382 A5 F9       LDA $F9    [$00:00F9]   A:0000 X:0000 Y:0730 ;Load attack flags
C2/C384 89 01       BIT #$01                A:0040 X:0000 Y:0730 ;Check if Heal bit set
C2/C386 F0 01       BEQ $01    [$C389]      A:0040 X:0000 Y:0730 ;Jump if not
	60

First begins with defenses of target
C2/C389 A6 C8       LDX $C8    [$00:00C8]   A:0040 X:0000 Y:0730 ;load attacker's attributes
C2/C38B BF 40 00 7E LDA $7E0040,x[$7E:FAC0] A:0040 X:FA80 Y:0730 ;load ailment status
C2/C38F 89 28       BIT #$28                A:0000 X:FA80 Y:0730 ;check if under Fear or Mushroom (...?! guess you could attack as Mushroom at one point)
C2/C391 D0 2A       BNE $2A    [$C3BD]      A:0000 X:FA80 Y:0730
Check ailment status for Mushroom
C2/C393 A6 CA       LDX $CA    [$00:00CA]   A:0000 X:FA80 Y:0730 ;loads target's stats
C2/C395 BF 40 00 7E LDA $7E0040,x[$7E:FC40] A:0000 X:FC00 Y:0730 ;load ailment status
C2/C399 89 20       BIT #$20                A:0000 X:FC00 Y:0730 ;check if under Mushroom
C2/C39B D0 20       BNE $20    [$C3BD]      A:0000 X:FC00 Y:0730
Check if using Defend command
C2/C39D BF 41 00 7E LDA $7E0041,x[$7E:FC41] A:0000 X:FC00 Y:0730
C2/C3A1 89 04       BIT #$04                A:0000 X:FC00 Y:0730 ;Check Defend bit
C2/C3A3 D0 18       BNE $18    [$C3BD]      A:0000 X:FC00 Y:0730 
Check if calculating attacker/target phys.attack/phys.defense
C2/C3A5 A5 F8       LDA $F8    [$00:00F8]   A:0000 X:FC00 Y:0730 ;load special flags
C2/C3A7 89 01       BIT #$01                A:0001 X:FC00 Y:0730 ;check if calculating attacker/target phys.attack/phys.defense
C2/C3A9 F0 0A       BEQ $0A    [$C3B5]      A:0001 X:FC00 Y:0730 ;If it's not (it's spell damage), jump to "Checks buff status for Mg.Defense Up!"
Checks buff status for Physical Defense Up!
C2/C3AB BF 41 00 7E LDA $7E0041,x[$7E:FC41] A:0001 X:FC00 Y:0730
C2/C3AF 89 40       BIT #$40                A:0000 X:FC00 Y:0730
C2/C3B1 D0 0A       BNE $0A    [$C3BD]      A:0000 X:FC00 Y:0730
C2/C3B3 80 18       BRA $18    [$C3CD]      A:0000 X:FC00 Y:0730
Checks buff status for Mg.Defense Up!
C2/C3B5 BF 41 00 7E LDA $7E0041,x[$7E:008F] A:0000 X:004E Y:2500
C2/C3B9 89 20       BIT #$20                A:0000 X:004E Y:2500
C2/C3BB F0 10       BEQ $10    [$C3CD]      A:0000 X:004E Y:2500

C2/C3BD C2 20       REP #$20                A:0000 X:004E Y:2500
C2/C3BF A5 C2       LDA $C2    [$00:00C2]   A:0000 X:004E Y:2500 ;loads final damage
C2/C3C1 F0 06       BEQ $06    [$C3C9]      A:0000 X:004E Y:2500 ;
C2/C3C3 4A          LSR A                   A:0000 X:004E Y:2500 ;divide by 2
C2/C3C4 D0 03       BNE $03    [$C3C9]      A:0000 X:004E Y:2500 ;jump if < 0
C2/C3C6 A9 01 00    LDA #$0001              A:0000 X:004E Y:2500 ;set damage to 1
C2/C3C9 85 C2       STA $C2    [$00:00C2]   A:0000 X:004E Y:2500 ;Save final damage
C2/C3CB E2 20       SEP #$20                A:0000 X:004E Y:2500

Calculation for attacker's status enhancements and debuffs
C2/C3CD A6 CA       LDX $CA    [$00:00CA]   A:0000 X:FC00 Y:0730
C2/C3CF BF 40 00 7E LDA $7E0040,x[$7E:FC40] A:0000 X:FC00 Y:0730
C2/C3D3 89 08       BIT #$08                A:0000 X:FC00 Y:0730 ;checks for Fear bit
C2/C3D5 D0 1A       BNE $1A    [$C3F1]      A:0000 X:FC00 Y:0730

C2/C3D7 A6 C8       LDX $C8    [$00:00C8]   A:0000 X:FC00 Y:0730
C2/C3D9 A5 F8       LDA $F8    [$00:00F8]   A:0000 X:FA80 Y:0730 ;load special flags
C2/C3DB 89 01       BIT #$01                A:0001 X:FA80 Y:0730 ;check if calculating attacker/target phys.attack/phys.defense
C2/C3DD F0 0A       BEQ $0A    [$C3E9]      A:0001 X:FA80 Y:0730 ;If it's not (it's spell damage), jump
Checks buff status for Physical Attack Up!
C2/C3DF BF 41 00 7E LDA $7E0041,x[$7E:FAC1] A:0001 X:FA80 Y:0730
C2/C3E3 89 10       BIT #$10                A:0000 X:FA80 Y:0730 ;check if phys.Attack up is set
C2/C3E5 D0 0A       BNE $0A    [$C3F1]      A:0000 X:FA80 Y:0730 ;If set jump to calculation
C2/C3E7 80 14       BRA $14    [$C3FD]      A:0000 X:FA80 Y:0730 ;If not jump over
Checks buff status for Mg.Attack Up!
	BF 41 00 7E
	89 08
	F0 0C
FINAL DAMAGE CALCULATION FOR FEAR/ATTACK UP!
C2/C3F1 C2 20       REP #$20                A:0000 X:004E Y:2500 ;set 16-bit mode
C2/C3F3 A5 C2       LDA $C2    [$00:00C2]   A:0000 X:004E Y:2500 ;Load final damage value
C2/C3F5 4A          LSR A                   A:0000 X:004E Y:2500 ;Divide by 2
C2/C3F6 18          CLC                     A:0000 X:004E Y:2500 ;start addition
C2/C3F7 65 C2       ADC $C2    [$00:00C2]   A:0000 X:004E Y:2500 ;Add final damage value
C2/C3F9 85 C2       STA $C2    [$00:00C2]   A:0000 X:004E Y:2500 ;save final damage (x1.5 final product)
C2/C3FB E2 20       SEP #$20                A:0000 X:004E Y:2500 ;set 8-bit mode
Check if Sleep, and wake up if hit by physical damage
(NOTE: Those afflicted with the Sleep status can be woken up by physical damage, but not spell damage)
C2/C3FD A5 F8       LDA $F8    [$00:00F8]   A:0000 X:FA80 Y:0730 ;load special flags
C2/C3FF 89 01       BIT #$01                A:0001 X:FA80 Y:0730 ;check if calculating attacker/target phys.attack/phys.defense
C2/C401 F0 1E       BEQ $1E    [$C421]      A:0001 X:FA80 Y:0730 ;If it's not (it's spell damage), skip

C2/C403 A6 CA       LDX $CA    [$00:00CA]   A:0001 X:FA80 Y:0730
C2/C405 BF 40 00 7E LDA $7E0040,x[$7E:FC40] A:0001 X:FC00 Y:0730
C2/C409 89 02       BIT #$02                A:0000 X:FC00 Y:0730
C2/C40B F0 14       BEQ $14    [$C421]      A:0000 X:FC00 Y:0730
C2/C40D A9 00       LDA #$00                A:0000 X:004E Y:2500
C2/C40F 9F 40 00 7E STA $7E0040,x[$7E:008E] A:0000 X:004E Y:2500
C2/C413 9F 43 00 7E STA $7E0043,x[$7E:0091] A:0000 X:004E Y:2500
C2/C417 BF 44 00 7E LDA $7E0044,x[$7E:0092] A:0000 X:004E Y:2500
C2/C41B 29 F8       AND #$F8                A:0000 X:004E Y:2500 
C2/C41D 9F 44 00 7E STA $7E0044,x[$7E:0092] A:0000 X:004E Y:2500

C2/C421 60          RTS                     A:0000 X:FC00 Y:0730

=================================================================
ATTACKS/SPELLS/WEAPONS/ITEMS: element resist instructions (This example uses Jump Shoes against an enemy with weakness and null to Jump)
C2/C422 A5 FD       LDA $FD    [$00:00FD]   A:0002 X:FA80 Y:0730
C2/C424 D0 01       BNE $01    [$C427]      A:0080 X:FA80 Y:0730

	60

C2/C427 A6 CA       LDX $CA    [$00:00CA]   A:0080 X:FA80 Y:0730
C2/C429 A5 CE       LDA $CE    [$00:00CE]   A:0080 X:FC00 Y:0730
C2/C42B D0 06       BNE $06    [$C433]      A:0000 X:FC00 Y:0730
C2/C42D A5 FD       LDA $FD    [$00:00FD]   A:0000 X:FC00 Y:0730
C2/C42F 9F 6A 00 7E STA $7E006A,x[$7E:FC6A] A:0080 X:FC00 Y:0730
C2/C433 BF 4C 00 7E LDA $7E004C,x[$7E:FC4C] A:0080 X:FC00 Y:0730 ;load ineffective elements
C2/C437 25 FD       AND $FD    [$00:00FD]   A:0080 X:FC00 Y:0730
C2/C439 45 FD       EOR $FD    [$00:00FD]   A:0080 X:FC00 Y:0730
C2/C43B D0 1B       BNE $1B    [$C458]      A:0000 X:FC00 Y:0730
C2/C43D A5 CF       LDA $CF    [$00:00CF]   A:0000 X:FC00 Y:0730
C2/C43F F0 11       BEQ $11    [$C452]      A:0001 X:FC00 Y:0730 ;

C2/C441 A5 FD       LDA $FD    [$00:00FD]   A:0001 X:FC00 Y:0730
C2/C443 89 80       BIT #$80                A:0080 X:FC00 Y:0730 ;check if element is Jump
C2/C445 F0 0B       BEQ $0B    [$C452]      A:0080 X:FC00 Y:0730 ;If not Jump, jump to 0 damage routine. (Jump, jump!)
C2/C447 A6 C8       LDX $C8    [$00:00C8]   A:0080 X:FC00 Y:0730 ;Load ally character stats
C2/C449 BF 1E 00 7E LDA $7E001E,x[$7E:FA9E] A:0080 X:FA80 Y:0730 ;loads accessory slot
C2/C44D C9 4C       CMP #$4C                A:004C X:FA80 Y:0730 ;checks for Jump Shoes accessory
C2/C44F D0 01       BNE $01    [$C452]      A:004C X:FA80 Y:0730 ;if not equipped, jump to 0 damage (damage null) routine
C2/C451 60          RTS                     A:004C X:FA80 Y:0730 

C2/C452 A0 00 00    LDY #$0000              A:0000 X:FC00 Y:0000
C2/C455 84 C2       STY $C2    [$00:00C2]   A:0000 X:FC00 Y:0000
C2/C457 60          RTS                     A:0000 X:FC00 Y:0000

C2/C458 A5 CE       LDA $CE    [$00:00CE]   A:6340 X:FC00 Y:0000
C2/C45A F0 1B       BEQ $1B    [$C477]      A:6340 X:FC00 Y:0000
C2/C45C BF 4D 00 7E LDA $7E004D,x[$7E:FC4D] A:6340 X:FC00 Y:0000 ;load elemental strengths
C2/C460 25 FD       AND $FD    [$00:00FD]   A:6340 X:FC00 Y:0000
C2/C462 45 FD       EOR $FD    [$00:00FD]   A:6340 X:FC00 Y:0000
C2/C464 D0 10       BNE $10    [$C476]      A:6340 X:FC00 Y:0000
C2/C466 C2 20       REP #$20                A:6340 X:FC00 Y:0000
C2/C468 A5 C2       LDA $C2    [$00:00C2]   A:6340 X:FC00 Y:0000
C2/C46A F0 06       BEQ $06    [$C472]      A:6340 X:FC00 Y:0000
C2/C46C 4A          LSR A                   A:6340 X:FC00 Y:0000 ;divide by 2
C2/C46D D0 03       BNE $03    [$C472]      A:6340 X:FC00 Y:0000
C2/C46F A9 01 00    LDA #$0001              A:6340 X:FC00 Y:0000
C2/C472 85 C2       STA $C2    [$00:00C2]   A:6340 X:FC00 Y:0000
C2/C474 E2 20       SEP #$20                A:6340 X:FC00 Y:0000
C2/C476 60          RTS                     A:6340 X:FC00 Y:0000

C2/C477 BF 4D 00 7E LDA $7E004D,x[$7E:8C7B] A:6340 X:FC00 Y:0000 ;load elemental strengths
C2/C47B 25 FD       AND $FD    [$00:00FD]   A:6340 X:FC00 Y:0000
C2/C47D 45 FD       EOR $FD    [$00:00FD]   A:6340 X:FC00 Y:0000
C2/C47F D0 09       BNE $09    [$C48A]      A:6340 X:FC00 Y:0000
C2/C481 C2 20       REP #$20                A:6340 X:FC00 Y:0000
C2/C483 A5 C2       LDA $C2    [$00:00C2]   A:6340 X:FC00 Y:0000
C2/C485 0A          ASL A                   A:6340 X:FC00 Y:0000
C2/C486 85 C2       STA $C2    [$00:00C2]   A:6340 X:FC00 Y:0000
C2/C488 E2 20       SEP #$20                A:6340 X:FC00 Y:0000
C2/C48A 60          RTS                     A:6340 X:FC00 Y:0000


=================================================================
SPELLS/ITEMS: Inflict item statuses
NOTE: Due to how this is programmed, if the character has invincible then they cannot gain UP! buffs.

Start
C2/C48B A6 CA       LDX $CA    [$00:00CA]   A:000A X:2400 Y:2400
C2/C48D A5 FE       LDA $FE    [$00:00FE]   A:000A X:2400 Y:2400
C2/C48F F0 2F       BEQ $2F    [$C4C0]      A:000A X:2400 Y:2400

C2/C491 5F 4E 00 7E EOR $7E004E,x[$7E:244E] A:000A X:2400 Y:2400
C2/C495 25 FE       AND $FE    [$00:00FE]   A:000A X:2400 Y:2400
C2/C497 F0 27       BEQ $27    [$C4C0]      A:000A X:2400 Y:2400

C2/C499 DF 40 00 7E CMP $7E0040,x[$7E:2440] A:000A X:2400 Y:2400
C2/C49D 90 21       BCC $21    [$C4C0]      A:000A X:2400 Y:2400

C2/C49F 9F 40 00 7E STA $7E0040,x[$7E:2440] A:000A X:2400 Y:2400
C2/C4A3 BF 41 00 7E LDA $7E0041,x[$7E:2441] A:000A X:2400 Y:2400
C2/C4A7 29 FB       AND #$FB                A:000A X:2400 Y:2400 ;removes Defend
C2/C4A9 9F 41 00 7E STA $7E0041,x[$7E:2441] A:000A X:2400 Y:2400
C2/C4AD A9 04       LDA #$04                A:000A X:2400 Y:2400 ;timer for status ailments
C2/C4AF 9F 43 00 7E STA $7E0043,x[$7E:2443] A:000A X:2400 Y:2400
C2/C4B3 BF 44 00 7E LDA $7E0044,x[$7E:2444] A:000A X:2400 Y:2400
C2/C4B7 29 F8       AND #$F8                A:000A X:2400 Y:2400
C2/C4B9 9F 44 00 7E STA $7E0044,x[$7E:2444] A:000A X:2400 Y:2400
C2/C4BD 20 04 C5    JSR $C504  [$C2:C504]   A:000A X:2400 Y:2400 ;Loads statuses, and disables buttons depending on the status

C2/C4C0 A5 FF       LDA $FF    [$00:00FF]   A:000A X:2400 Y:2400
C2/C4C2 29 78       AND #$78                A:000A X:2400 Y:2400
C2/C4C4 F0 08       BEQ $08    [$C4CE]      A:000A X:2400 Y:2400
C2/C4C6 1F 41 00 7E ORA $7E0041,x[$7E:2441] A:000A X:2400 Y:2400
C2/C4CA 9F 41 00 7E STA $7E0041,x[$7E:2441] A:000A X:2400 Y:2400
C2/C4CE 60          RTS                     A:000A X:2400 Y:2400

ITEMS: Nullify item statuses
C2/C4CF A6 CA       LDX $CA    [$00:00CA]   A:000A X:2400 Y:2400
C2/C4D1 A5 FE       LDA $FE    [$00:00FE]   A:000A X:2400 Y:2400
C2/C4D3 F0 1C       BEQ $1C    [$C4F1]      A:000A X:2400 Y:2400
C2/C4D5 5F 40 00 7E EOR $7E0040,x[$7E:2440] A:000A X:2400 Y:2400
C2/C4D9 3F 40 00 7E AND $7E0040,x[$7E:2440] A:000A X:2400 Y:2400
C2/C4DD 9F 40 00 7E STA $7E0040,x[$7E:2440] A:000A X:2400 Y:2400
C2/C4E1 A9 00       LDA #$00                A:000A X:2400 Y:2400
C2/C4E3 9F 43 00 7E STA $7E0043,x[$7E:2443] A:000A X:2400 Y:2400
C2/C4E7 BF 44 00 7E LDA $7E0044,x[$7E:2444] A:000A X:2400 Y:2400
C2/C4EB 29 F8       AND #$F8                A:000A X:2400 Y:2400
C2/C4ED 9F 44 00 7E STA $7E0044,x[$7E:2444] A:000A X:2400 Y:2400
C2/C4F1 A5 FF       LDA $FF    [$00:00FF]   A:000A X:2400 Y:2400
C2/C4F3 29 78       AND #$78                A:000A X:2400 Y:2400
C2/C4F5 F0 0C       BEQ $0C    [$C503]      A:000A X:2400 Y:2400
C2/C4F7 5F 41 00 7E EOR $7E0041,x[$7E:2441] A:000A X:2400 Y:2400
C2/C4FB 3F 41 00 7E AND $7E0041,x[$7E:2441] A:000A X:2400 Y:2400
C2/C4FF 9F 41 00 7E STA $7E0041,x[$7E:2441] A:000A X:2400 Y:2400
C2/C503 60          RTS                     A:000A X:2400 Y:2400


=================================================================
Loads statuses, and disables ABXY buttons depending on the status
C2/C504

=================================================================

ATTACKS/SPELLS/WEAPONS/ITEMS: Damage or Healing
C2/C55E C2 20       REP #$20                A:2740 X:FC00 Y:0730 
C2/C560 A6 CA       LDX $CA    [$00:00CA]   A:2740 X:FC00 Y:0730 
C2/C562 A5 F9       LDA $F9    [$00:00F9]   A:2740 X:FC00 Y:0730 
C2/C564 89 01 00    BIT #$0001              A:6340 X:FC00 Y:0730 ;Check if Heal bit set
C2/C567 D0 1A       BNE $1A    [$C583]      A:6340 X:FC00 Y:0730 ;Jump to Healing routine

C2/C569 BF 11 00 7E LDA $7E0011,x[$7E:FC11] A:6340 X:FC00 Y:0730 ;load monster's current HP
C2/C56D 9F 35 00 7E STA $7E0035,x[$7E:FC35] A:0320 X:FC00 Y:0730 
C2/C571 38          SEC                     A:0320 X:FC00 Y:0730 
C2/C572 E5 C2       SBC $C2    [$00:00C2]   A:0320 X:FC00 Y:0730 ;subtract final damage
C2/C574 10 03       BPL $03    [$C579]      A:0253 X:FC00 Y:0730 ;branch if > 0

C2/C576 A9 00 00

C2/C579 9F 11 00 7E STA $7E0011,x[$7E:FC11] A:0253 X:FC00 Y:0730 ;store as current HP
C2/C57D 85 C0       STA $C0    [$00:00C0]   A:0253 X:FC00 Y:0730 
C2/C57F A5 C2       LDA $C2    [$00:00C2]   A:0253 X:FC00 Y:0730 ;load final damage
C2/C581 80 23       BRA $23    [$C5A6]      A:00CD X:FC00 Y:0730 

Healing routine
---------------
C2/C583 A9 00 00    LDA #$0000              A:00F5 X:2500 Y:2500
C2/C586 9F 35 00 7E STA $7E0035,x[$7E:2535] A:00F5 X:2500 Y:2500
C2/C58A BF 11 00 7E LDA $7E0011,x[$7E:2511] A:00F5 X:2500 Y:2500
C2/C58E 18          CLC                     A:00F5 X:2500 Y:2500
C2/C58F 65 C2       ADC $C2    [$00:00C2]   A:00F5 X:2500 Y:2500
C2/C591 DF 13 00 7E CMP $7E0013,x[$7E:2513] A:00F5 X:2500 Y:2500
C2/C595 30 04       BMI $04    [$C59B]      A:00F5 X:2500 Y:2500
C2/C597 BF 13 00 7E LDA $7E0013,x[$7E:2513] A:00F5 X:2500 Y:2500
C2/C59B 9F 11 00 7E STA $7E0011,x[$7E:2511] A:00F5 X:2500 Y:2500
C2/C59F 85 C0       STA $C0    [$00:00C0]   A:00F5 X:2500 Y:2500
C2/C5A1 A5 C2       LDA $C2    [$00:00C2]   A:00F5 X:2500 Y:2500
C2/C5A3 09 00 80    ORA #$8000              A:00F5 X:2500 Y:2500 ;7E:0046 bit 7 = displays green digits.

C2/C5A6 9F 45 00 7E STA $7E0045,x[$7E:2545] A:00F5 X:2500 Y:2500 ;store as damage digits to show
C2/C5AA A5 CE       LDA $CE    [$00:00CE]   A:00F5 X:2500 Y:2500
C2/C5AC 89 FF 00    BIT #$00FF              A:00F5 X:2500 Y:2500 ;check byte 2
C2/C5AF D0 14       BNE $14    [$C5C5]      A:00F5 X:2500 Y:2500 ;branch if any bits set
C2/C5B1 A5 C8       LDA $C8    [$00:00C8]   A:0100 X:FC00 Y:0730 
C2/C5B3 9F 62 00 7E STA $7E0062,x[$7E:FC62] A:FB80 X:FC00 Y:0730 ; ???
C2/C5B7 AD 2A 07    LDA $072A  [$00:072A]   A:FB80 X:FC00 Y:0730 
C2/C5BA 9F 66 00 7E STA $7E0066,x[$7E:FC66] A:0002 X:FC00 Y:0730 ; ???
C2/C5BE AD 2C 07    LDA $072C  [$00:072C]   A:0002 X:FC00 Y:0730 
C2/C5C1 9F 68 00 7E STA $7E0068,x[$7E:FC68] A:0000 X:FC00 Y:0730 ; ???

C2/C5C5 E2 20       SEP #$20                A:0000 X:FC00 Y:0730 
C2/C5C7 60          RTS                     A:0000 X:FC00 Y:0730 

=================================================================
JSR for monster defeated
C2/C5C8 08          PHP                     A:0000 X:FC00 Y:0000
C2/C5C9 E2 20       SEP #$20                A:0000 X:FC00 Y:0000
C2/C5CB A6 CA       LDX $CA    [$00:00CA]   A:0000 X:FC00 Y:0000
C2/C5CD BF 00 00 7E LDA $7E0000,x[$7E:FC00] A:0000 X:FC00 Y:0000
C2/C5D1 09 40       ORA #$40                A:0000 X:FC00 Y:0000
C2/C5D3 9F 00 00 7E STA $7E0000,x[$7E:FC00] A:0040 X:FC00 Y:0000
C2/C5D7 BF 40 00 7E LDA $7E0040,x[$7E:FC40] A:0040 X:FC00 Y:0000
C2/C5DB 9F 30 00 7E STA $7E0030,x[$7E:FC30] A:0000 X:FC00 Y:0000
C2/C5DF BF 41 00 7E LDA $7E0041,x[$7E:FC41] A:0000 X:FC00 Y:0000
C2/C5E3 9F 31 00 7E STA $7E0031,x[$7E:FC31] A:0000 X:FC00 Y:0000
C2/C5E7 BF 43 00 7E LDA $7E0043,x[$7E:FC43] A:0000 X:FC00 Y:0000
C2/C5EB 9F 33 00 7E STA $7E0033,x[$7E:FC33] A:0000 X:FC00 Y:0000
C2/C5EF BF 44 00 7E LDA $7E0044,x[$7E:FC44] A:0000 X:FC00 Y:0000
C2/C5F3 9F 34 00 7E STA $7E0034,x[$7E:FC34] A:0080 X:FC00 Y:0000
C2/C5F7 A9 00       LDA #$00                A:0080 X:FC00 Y:0000
C2/C5F9 9F 40 00 7E STA $7E0040,x[$7E:FC40] A:0000 X:FC00 Y:0000
C2/C5FD 9F 41 00 7E STA $7E0041,x[$7E:FC41] A:0000 X:FC00 Y:0000
C2/C601 9F 42 00 7E STA $7E0042,x[$7E:FC42] A:0000 X:FC00 Y:0000
C2/C605 BF 41 00 7E LDA $7E0041,x[$7E:FC41] A:0000 X:FC00 Y:0000
C2/C609 09 80       ORA #$80                A:0000 X:FC00 Y:0000
C2/C60B 9F 41 00 7E STA $7E0041,x[$7E:FC41] A:0080 X:FC00 Y:0000
C2/C60F A5 CE       LDA $CE    [$00:00CE]   A:0080 X:FC00 Y:0000
C2/C611 D0 1F       BNE $1F    [$C632]      A:0000 X:FC00 Y:0000
C2/C613 BF 11 00 7E LDA $7E0011,x[$7E:FC11] A:0000 X:FC00 Y:0000
C2/C617 9F 35 00 7E STA $7E0035,x[$7E:FC35] A:0000 X:FC00 Y:0000
C2/C61B BF 12 00 7E LDA $7E0012,x[$7E:FC12] A:0000 X:FC00 Y:0000
C2/C61F 9F 36 00 7E STA $7E0036,x[$7E:FC36] A:0000 X:FC00 Y:0000
C2/C623 A9 00       LDA #$00                A:0000 X:FC00 Y:0000
C2/C625 9F 11 00 7E STA $7E0011,x[$7E:FC11] A:0000 X:FC00 Y:0000
C2/C629 9F 12 00 7E STA $7E0012,x[$7E:FC12] A:0000 X:FC00 Y:0000
C2/C62D 28          PLP                     A:0000 X:FC00 Y:0000
C2/C62E 20 8D B2    JSR $B28D  [$C2:B28D]   A:0000 X:FC00 Y:0000	;MONSTER: Vital status of all monsters on the field (for checking flower bonus)
C2/C631 60          RTS                     A:0001 X:0010 Y:000E

=================================================================
Revive (Used for items and ??? called at C2/A62F, C2/BF5D, C2/C01E)
C2/C641 08          PHP                     A:3000 X:0000 Y:7024
C2/C642 E2 20       SEP #$20                A:3000 X:0000 Y:7024
C2/C644 A6 CA       LDX $CA    [$00:30CA]   A:3000 X:0000 Y:7024
C2/C646 BF 00 00 7E LDA $7E0000,x[$7E:0000] A:3000 X:0000 Y:7024
C2/C64A 29 3F       AND #$3F                A:3000 X:0000 Y:7024
C2/C64C 9F 00 00 7E STA $7E0000,x[$7E:0000] A:3000 X:0000 Y:7024
C2/C650 A9 00       LDA #$00                A:3000 X:0000 Y:7024
C2/C652 9F 44 00 7E STA $7E0044,x[$7E:0044] A:3000 X:0000 Y:7024
C2/C656 A5 CE       LDA $CE    [$00:30CE]   A:3000 X:0000 Y:7024
C2/C658 D0 32       BNE $32    [$C68C]      A:3000 X:0000 Y:7024

Monsters
C2/C65A A9 00       LDA #$00                A:3000 X:0000 Y:7024
C2/C65C 9F 52 00 7E STA $7E0052,x[$7E:0052] A:3000 X:0000 Y:7024
C2/C660 9F 53 00 7E STA $7E0053,x[$7E:0053] A:3000 X:0000 Y:7024
C2/C664 9F 56 00 7E STA $7E0056,x[$7E:0056] A:3000 X:0000 Y:7024
C2/C668 9F 57 00 7E STA $7E0057,x[$7E:0057] A:3000 X:0000 Y:7024
C2/C66C 9F 41 00 7E STA $7E0041,x[$7E:0041] A:3000 X:0000 Y:7024
C2/C670 BF 1E 00 7E LDA $7E001E,x[$7E:001E] A:3000 X:0000 Y:7024
C2/C674 29 03       AND #$03                A:3000 X:0000 Y:7024 ;set monster invulnerable + mortality protection
C2/C676 9F 41 00 7E STA $7E0041,x[$7E:0041] A:3000 X:0000 Y:7024
C2/C67A BF 13 00 7E LDA $7E0013,x[$7E:0013] A:3000 X:0000 Y:7024
C2/C67E 9F 11 00 7E STA $7E0011,x[$7E:0011] A:3000 X:0000 Y:7024
C2/C682 BF 14 00 7E LDA $7E0014,x[$7E:0014] A:3000 X:0000 Y:7024
C2/C686 9F 12 00 7E STA $7E0012,x[$7E:0012] A:3000 X:0000 Y:7024
C2/C68A 28          PLP                     A:3000 X:0000 Y:7024
C2/C68B 60          RTS                     A:3000 X:0000 Y:7024

Allies
C2/C68C BF 4F 00 7E LDA $7E004F,x[$7E:004F] A:3000 X:0000 Y:7024
C2/C690 9F 41 00 7E STA $7E0041,x[$7E:0041] A:3000 X:0000 Y:7024
C2/C694 BF 13 00 7E LDA $7E0013,x[$7E:0013] A:3000 X:0000 Y:7024
C2/C698 9F 11 00 7E STA $7E0011,x[$7E:0011] A:3000 X:0000 Y:7024
C2/C69C BF 14 00 7E LDA $7E0014,x[$7E:0014] A:3000 X:0000 Y:7024
C2/C6A0 9F 12 00 7E STA $7E0012,x[$7E:0012] A:3000 X:0000 Y:7024
C2/C6A4 28          PLP                     A:3000 X:0000 Y:7024
C2/C6A5 60          RTS                     A:3000 X:0000 Y:7024

=================================================================

Flower Bonus: Load status attributes

C2/C6A6 AD 00 07    LDA $0700  [$00:0700]   A:0040 X:0010 Y:000E 
C2/C6A9 89 22       BIT #$22                A:0000 X:0010 Y:000E 
C2/C6AB F0 01       BEQ $01    [$C6AE]      A:0000 X:0010 Y:000E 
C2/C6AE A6 C8       LDX $C8    [$00:00C8]   A:0000 X:0010 Y:000E 
C2/C6B0 BF 44 00 7E LDA $7E0044,x[$7E:FB44] A:0000 X:FB00 Y:000E 
C2/C6B4 29 2F       AND #$2F                A:0000 X:FB00 Y:000E ;clear double-turn bit
C2/C6B6 9F 44 00 7E STA $7E0044,x[$7E:FB44] A:0000 X:FB00 Y:000E 
C2/C6BA A9 00       LDA #$00                A:0000 X:FB00 Y:000E 
C2/C6BC EB          XBA                     A:0000 X:FB00 Y:000E 
C2/C6BD A6 CA       LDX $CA    [$00:00CA]   A:0000 X:FB00 Y:000E ;Load monster's stats
C2/C6BF BF 01 00 7E LDA $7E0001,x[$7E:FC01] A:0000 X:FC00 Y:000E ;load current monster byte
C2/C6C3 A8          TAY                     A:0041 X:FC00 Y:000E ;set as offset pointer
C2/C6C4 AF 22 00 F9 LDA $F90022[$F9:0022]   A:0041 X:FC00 Y:0041 ;load from pointer table
C2/C6C8 85 D4       STA $D4    [$00:00D4]   A:0044 X:FC00 Y:0041 
C2/C6CA AF 23 00 F9 LDA $F90023[$F9:0023]   A:0044 X:FC00 Y:0041 ;load from pointer table
C2/C6CE 85 D5       STA $D5    [$00:00D5]   A:00BB X:FC00 Y:0041 
C2/C6D0 A2 F9 00    LDX #$00F9              A:00BB X:FC00 Y:0041 
C2/C6D3 86 D6       STX $D6    [$00:00D6]   A:00BB X:00F9 Y:0041 
C2/C6D5 B7 D4       LDA [$D4],y[$F9:BB85]   A:00BB X:00F9 Y:0041 ;load flower bonus
C2/C6D7 85 D4       STA $D4    [$00:00D4]   A:0054 X:00F9 Y:0041 
C2/C6D9 64 D5       STZ $D5    [$00:00D5]   A:0054 X:00F9 Y:0041 
C2/C6DB A5 D4       LDA $D4    [$00:00D4]   A:0054 X:00F9 Y:0041 
C2/C6DD 29 F0       AND #$F0                A:0054 X:00F9 Y:0041 ;isolate odds
C2/C6DF 4A          LSR A                   A:0050 X:00F9 Y:0041 ;move to lower nibble
C2/C6E0 4A          LSR A                   A:0028 X:00F9 Y:0041 
C2/C6E1 4A          LSR A                   A:0014 X:00F9 Y:0041 
C2/C6E2 4A          LSR A                   A:000A X:00F9 Y:0041 
C2/C6E3 AA          TAX                     A:0005 X:00F9 Y:0041 
C2/C6E4 BF 6E C7 C2 LDA $C2C76E,x[$C2:C773] A:0005 X:0005 Y:0041 
C2/C6E8 F0 0B       BEQ $0B    [$C6F5]      A:0032 X:0005 Y:0041 
C2/C6EA 85 DA       STA $DA    [$00:00DA]   A:0032 X:0005 Y:0041 
C2/C6EC A9 64       LDA #$64                A:0032 X:0005 Y:0041 
C2/C6EE 85 DB       STA $DB    [$00:00DB]   A:0064 X:0005 Y:0041 
C2/C6F0 20 F2 B2    JSR $B2F2  [$C2:B2F2]   A:0064 X:0005 Y:0041 ;generate random number

C2/C6F3 D0 0D       BNE $0D    [$C702]      A:0001 X:0005 Y:0041 ;branch if generated number not 0

C2/C6F5 A6 C8
C2/C6F7 BF 44 00 7E
C2/C6FB 29 DF
C2/C6FD 9F 44 00 7E
C2/C701 60

C2/C702 A6 C8       LDX $C8    [$00:00C8]   A:0001 X:0005 Y:0041 
C2/C704 BF 44 00 7E LDA $7E0044,x[$7E:FB44] A:0001 X:FB00 Y:0041 
C2/C708 09 20       ORA #$20                A:0000 X:FB00 Y:0041 
C2/C70A 9F 44 00 7E STA $7E0044,x[$7E:FB44] A:0020 X:FB00 Y:0041 
C2/C70E 9B          TXY                     A:0020 X:FB00 Y:0041 
C2/C70F A6 CA       LDX $CA    [$00:00CA]   A:0020 X:FB00 Y:FB00 
C2/C711 A9 00       LDA #$00                A:0020 X:FC00 Y:FB00 
C2/C713 EB          XBA                     A:0000 X:FC00 Y:FB00 
C2/C714 A5 D4       LDA $D4    [$00:00D4]   A:0000 X:FC00 Y:FB00 ;load flower bonus
C2/C716 29 0F       AND #$0F                A:0054 X:FC00 Y:FB00 ;isolate flower type
C2/C718 9F 2D 00 7E STA $7E002D,x[$7E:FC2D] A:0004 X:FC00 Y:FB00 ;store flower type
C2/C71C 0A          ASL A                   A:0004 X:FC00 Y:FB00 
C2/C71D AA          TAX                     A:0008 X:FC00 Y:FB00 
C2/C71E 7C 21 C7    JMP ($C721,x)[$C2:C75B] A:0008 X:0008 Y:FB00 ;jump to flower type's function

Flower Bonus: Function Pointers

C2/C721 2D C7       ...
C2/C723 2E C7       Attack Up!
C2/C725 3A C7       Defense Up!
C2/C727 46 C7       HPMax!
C2/C729 5B C7       Once Again!
C2/C72B 67 C7       Lucky!

Flower Bonus: Once Again!

C2/C75B BB          TYX                     A:0008 X:0008 Y:FB00 
C2/C75C BF 44 00 7E LDA $7E0044,x[$7E:FB44] A:0008 X:FB00 Y:FB00 ;load turn
C2/C760 09 10       ORA #$10                A:0020 X:FB00 Y:FB00 ;set bit for double-turn
C2/C762 9F 44 00 7E STA $7E0044,x[$7E:FB44] A:0030 X:FB00 Y:FB00 
C2/C766 60          RTS                     A:0030 X:FB00 Y:FB00 ;end

Flower Bonus: Lucky!
C2/C767 A9 01
C2/C769 8F 1F FA 7E ;7E:FA1F
C2/C76D 60
-----------------------------------------------------------------
Flower Bonus chance table (increments of 10s up to 100% chance)
C2/C76F 00
C2/C770 0A ;10%
	14 ;20%
	1E ;30%
	28 ;40%
	32 ;50%
	3C ;60%
	46 ;70%
	50 ;80%
	5A ;90%
	64 ;100%

-----------------------------------------------------------------
...From C2/A0C4 ... (JSR $C779)
AILMENT: check status ailments (this example uses slot 2) X:FB00 (slot 2)
C2/C779 E2 20
	86 CA
	20 0A B3	;Load monster's stats

C2/C780 85 CE       STA $CE    [$00:00CE]   A:0001 X:FB00 Y:2580 
C2/C782 BF 00 00 7E LDA $7E0000,x[$7E:FB00] A:0001 X:FB00 Y:2580 
C2/C786 30 0D       BMI $0D    [$C795]      A:0000 X:FB00 Y:2580 ;branch if minus
C2/C788 BF 41 00 7E LDA $7E0041,x[$7E:FB41] A:0000 X:FB00 Y:2580 
C2/C78C 29 FB       AND #$FB                A:0000 X:FB00 Y:2580 
C2/C78E 9F 41 00 7E STA $7E0041,x[$7E:FB41] A:0000 X:FB00 Y:2580 
C2/C792 20 98 C7    JSR $C798  [$C2:C798]   A:0000 X:FB00 Y:2580 

C2/C795 C2 20	    REP #$20                			 ;set 16-bit A
C2/C797 60	    RTS						 ;end

C2/C798 BF 40 00 7E LDA $7E0040,x[$7E:FB40] A:0000 X:FB00 Y:2580 ;load status ailment
C2/C79C D0 0E       BNE $0E    [$C7AC]      A:0020 X:FB00 Y:2580 ;branch if there is an ailment set (is not equal to 0)

C2/C79D BF 44 00 7E LDA						 ;check
C2/C7A0 29 F0 0D						 ;isolate
C2/C7A3 24 07	   						 ;test bits
C2/C7A7 9F 44 00 7E STA						 ;write
C2/C7AB 60	    RTS						 ;end

C2/C7AC BF 43 00 7E LDA $7E0043,x[$7E:FB43] A:0020 X:FB00 Y:2580 ;how long the ailment lasts for
C2/C7B0 3A          DEC A                   A:0003 X:FB00 Y:2580 ;decrease by 1 turn
C2/C7B1 9F 43 00 7E STA $7E0043,x[$7E:FB43] A:0002 X:FB00 Y:2580 ;write back to memory
C2/C7B5 10 12       BPL $12    [$C7C9]      A:0002 X:FB00 Y:2580 ;branch if greater than 0

	A9 00	   						 ;set accumulator to absolute value of 0
	9F 40 00 7E						 ;write to ailment status (clear status)
	9F 43 00 7E						 ;write to reset number of turns status ailment lasts
	AD 24 07						 
	9F 44 00 7E						 ;write to 44
	60

C2/C7C9 BF 40 00 7E LDA $7E0040,x[$7E:FB40] A:0002 X:FB00 Y:2580 ;check status ailment
C2/C7CD 89 8C       BIT #$8C                A:0020 X:FB00 Y:2580 ;check if Poison, Fear, Invincible bit set
C2/C7CF F0 0F       BEQ $0F    [$C7E0]      A:0020 X:FB00 Y:2580 ;branch if not equal

	BF 44 00 7E LDA						 ;load
	29 F0 0D						 ;isolate
	24 07	    BIT						 ;test bits
	9F 44 00 7E STA						 ;write to
	80 2A							 ;branch to C80A (Checks for Poison/Mushroom)

C2/C7E0 89 40       BIT #$40                A:0020 X:FB00 Y:2580 ;check if Scarecrow bit set
C2/C7E2 F0 0E       BEQ $0E    [$C7F2]      A:0020 X:FB00 Y:2580 ;branch if not equal

	BF 44 00 7E LDA						 ;load
	29 F0 0D						 ;isolate
	24 07	    BIT						 ;test bits
	9F 44 00 7E STA						 ;write to
	60							 ;end

C2/C7F2 89 22       BIT #$22                A:0020 X:FB00 Y:2580 ;check if Sleep, Mushroom bit set
C2/C7F4 F0 02       BEQ $02    [$C7F8]      A:0020 X:FB00 Y:2580 ;branch if not equal
C2/C7F6 80 12       BRA $12    [$C80A]      A:0020 X:FB00 Y:2580 ;always branch

	89 01							 ;check if Mute bit set
	F0 0E		       [$C80A]				 ;jump 14 bytes
	BF 44 00 7E						 ;load
	29 FA 0D						 ;isolate
	24 07							 ;test bits
	9F 44 00 7E STA						 ;write to
	60	    RTS						 ;end

C2/C80A BF 40 00 7E LDA $7E0040,x[$7E:FB40] A:0020 X:FB00 Y:2580 ;load status ailment
C2/C80E 89 24       BIT #$24                A:0020 X:FB00 Y:2580 ;check if Mushroom, Poison bit set
C2/C810 D0 01       BNE $01    [$C813]      A:0020 X:FB00 Y:2580 ;branch if set

C2/C812 60	    RTS						 ;end

C2/C813 BF 11 00 7E LDA $7E0011,x[$7E:FB11] A:0020 X:FB00 Y:2580 ;load current HP
C2/C817 85 E0       STA $E0    [$00:00E0]   A:00D1 X:FB00 Y:2580 
C2/C819 BF 12 00 7E LDA $7E0012,x[$7E:FB12] A:00D1 X:FB00 Y:2580 ;load max HP
C2/C81D 85 E1       STA $E1    [$00:00E1]   A:0000 X:FB00 Y:2580 
C2/C81F A4 E0       LDY $E0    [$00:00E0]   A:0000 X:FB00 Y:2580 
C2/C821 8C 04 42    STY $4204  [$00:4204]   A:0000 X:FB00 Y:00D1 ;set max HP as dividend
C2/C824 A9 0A       LDA #$0A                A:0000 X:FB00 Y:00D1 ;load constant 10
C2/C826 8D 06 42    STA $4206  [$00:4206]   A:000A X:FB00 Y:00D1 ;set 10 as divisor
C2/C829 20 C9 B3    JSR $B3C9  [$C2:B3C9]   A:000A X:FB00 Y:00D1 ;JSR to RTS (return)
C2/C82C 20 C9 B3    JSR $B3C9  [$C2:B3C9]   A:000A X:FB00 Y:00D1 ;JSR to RTS (return)

C2/C82F AC 14 42    LDY $4214  [$00:4214]   A:000A X:FB00 Y:00D1 ;load quotient (max HP / 10)
C2/C832 D0 03       BNE $03    [$C837]      A:000A X:FB00 Y:0014 ;branch if not 0

C2/C834 A0 01 00    LDY #$0001					  ;load 1 as regeneration amount

C2/C837 84 E2       STY $E2    [$00:00E2]   A:000A X:FB00 Y:0014 ;store quotient for regeneration amount

C2/C839 BF 40 00 7E LDA $7E0040,x[$7E:FB40] A:000A X:FB00 Y:0014 ;load current ailment
C2/C83D 89 20       BIT #$20                A:0020 X:FB00 Y:0014 ;check if Mushroom bit set
C2/C83F D0 03       BNE $03    [$C844]      A:0020 X:FB00 Y:0014 ;branch if set
C2/C841 4C 6F C8    JMP $C86F  [$C2:C86F]			 ;jump to HP degeneration routine


regenerate HP
-------------
C2/C844 C2 20       REP #$20                A:0020 X:FB00 Y:0014 ;set 16-bit A
C2/C846 A5 E0       LDA $E0    [$00:00E0]   A:0020 X:FB00 Y:0014 ;load current HP
C2/C848 18          CLC                     A:00D1 X:FB00 Y:0014 ;prepares for addition algorithm
C2/C849 65 E2       ADC $E2    [$00:00E2]   A:00D1 X:FB00 Y:0014 ;add regeneration amount to current HP
C2/C84B DF 13 00 7E CMP $7E0013,x[$7E:FB13] A:00E5 X:FB00 Y:0014 ;compare sum to maximum HP
C2/C84F 30 04       BMI $04    [$C855]      A:00E5 X:FB00 Y:0014 ;branch if less than maximum HP
C2/C851 BF 13 00 7E LDA $7E0013,x[$7E:FB13] A:00E5 X:FB00 Y:0014 ;load maximum HP
C2/C855 9F 11 00 7E STA $7E0011,x[$7E:FB11] A:00D3 X:FB00 Y:0014 ;store to current HP
C2/C859 A5 E2       LDA $E2    [$00:00E2]   A:00D3 X:FB00 Y:0014 ;load regeneration amount
C2/C85B 09 00 80    ORA #$8000              A:0014 X:FB00 Y:0014 ;set bit 7 (heal bit)
C2/C85E 9F 45 00 7E STA $7E0045,x[$7E:FB45] A:8014 X:FB00 Y:0014 ;store as numerals to show

C2/C862 E2 20       SEP #$20                A:8014 X:FB00 Y:0014 
C2/C864 BF 44 00 7E LDA $7E0044,x[$7E:FB44] A:8014 X:FB00 Y:0014 
C2/C868 09 80       ORA #$80                A:8007 X:FB00 Y:0014 ;set bit 7
C2/C86A 9F 44 00 7E STA $7E0044,x[$7E:FB44] A:8087 X:FB00 Y:0014 
C2/C86E 60          RTS                     A:8087 X:FB00 Y:0014 ;end

degenerate HP (this example uses slot 1)
-------------
C2/C86F C2 20       REP #$20                A:0004 X:FA80 Y:0014 ;set 16-bit A
C2/C871 A5 E0       LDA $E0    [$00:00E0]   A:0004 X:FA80 Y:0014 ;load current HP
C2/C873 38          SEC                     A:00CA X:FA80 Y:0014 
C2/C874 E5 E2       SBC $E2    [$00:00E2]   A:00CA X:FA80 Y:0014 ;subtract degeneration amount from current HP
C2/C876 F0 02       BEQ $02    [$C87A]      A:00B6 X:FA80 Y:0014 ;branch if diff = 0
C2/C878 10 03       BPL $03    [$C87D]      A:00B6 X:FA80 Y:0014 ;branch if diff greater than 0

C2/C87A A9 01 00    LDA #$0001					  ;load 1 to store to current HP

C2/C87D 9F 11 00 7E STA $7E0011,x[$7E:FA91] A:00B6 X:FA80 Y:0014 ;store to current HP
C2/C881 A5 E2       LDA $E2    [$00:00E2]   A:00B6 X:FA80 Y:0014 ;load degeneration amount
C2/C883 9F 45 00 7E STA $7E0045,x[$7E:FAC5] A:0014 X:FA80 Y:0014 ;store as numerals to show

C2/C887 E2 20       SEP #$20                A:0014 X:FA80 Y:0014 
C2/C889 BF 44 00 7E LDA $7E0044,x[$7E:FAC4] A:0014 X:FA80 Y:0014 
C2/C88D 09 80       ORA #$80                A:0000 X:FA80 Y:0014 ;set bit 7
C2/C88F 9F 44 00 7E STA $7E0044,x[$7E:FAC4] A:0080 X:FA80 Y:0014 
C2/C893 60          RTS                     A:0080 X:FA80 Y:0014 ;end

=================================================================
ALLY: Timed-hit Calculation
DISASSEMBLER NOTE: A weapon's timing is loaded onto the character using 7E:005C - 7E:005F before battle.

C2/C894 AE 50 07    LDX $0750  [$7F:0750]   A:2100 X:003C Y:03D2 ;load character's stats
C2/C897 86 C8       STX $C8    [$00:00C8]   A:2100 X:003C Y:03D2
C2/C899 BF 5C 00 7E LDA $7E005C,x[$7E:0098] A:2100 X:003C Y:03D2 ;load weapon timing byte 1
C2/C89D 29 FF 00    AND #$00FF              A:2100 X:003C Y:03D2
C2/C8A0 0A          ASL A                   A:2100 X:003C Y:03D2
C2/C8A1 8D D0 30    STA $30D0  [$7F:30D0]   A:2100 X:003C Y:03D2
C2/C8A4 BF 5D 00 7E LDA $7E005D,x[$7E:0099] A:2100 X:003C Y:03D2 ;load weapon timing byte 2
C2/C8A8 29 FF 00    AND #$00FF              A:2100 X:003C Y:03D2
C2/C8AB 0A          ASL A                   A:2100 X:003C Y:03D2
C2/C8AC 8D D2 30    STA $30D2  [$7F:30D2]   A:2100 X:003C Y:03D2
C2/C8AF BF 5E 00 7E LDA $7E005E,x[$7E:009A] A:2100 X:003C Y:03D2 ;load weapon timing byte 3
C2/C8B3 29 FF 00    AND #$00FF              A:2100 X:003C Y:03D2
C2/C8B6 0A          ASL A                   A:2100 X:003C Y:03D2
C2/C8B7 8D D4 30    STA $30D4  [$7F:30D4]   A:2100 X:003C Y:03D2
C2/C8BA BF 5F 00 7E LDA $7E005F,x[$7E:009B] A:2100 X:003C Y:03D2 ;load weapon timing byte 4
C2/C8BE 29 FF 00    AND #$00FF              A:2100 X:003C Y:03D2
C2/C8C1 0A          ASL A                   A:2100 X:003C Y:03D2
C2/C8C2 CD 4C 30    CMP $304C  [$7F:304C]   A:2100 X:003C Y:03D2
C2/C8C5 30 03       BMI $03    [$C8CA]      A:2100 X:003C Y:03D2
C2/C8C7 AD 4C 30    LDA $304C  [$7F:304C]   A:2100 X:003C Y:03D2
C2/C8CA 8D D6 30    STA $30D6  [$7F:30D6]   A:2100 X:003C Y:03D2
C2/C8CD 9C 4C 30    STZ $304C  [$7F:304C]   A:2100 X:003C Y:03D2
C2/C8D0 A9 37 D2    LDA #$D237              A:2100 X:003C Y:03D2
C2/C8D3 8D 6E 30    STA $306E  [$7F:306E]   A:2100 X:003C Y:03D2
C2/C8D6 9C 60 30    STZ $3060  [$7F:3060]   A:2100 X:003C Y:03D2
C2/C8D9 A9 01 00    LDA #$0001              A:2100 X:003C Y:03D2
C2/C8DC 0C 00 30    TSB $3000  [$7F:3000]   A:2100 X:003C Y:03D2
C2/C8DF 22 00 08 00 JSL $000800[$00:0800]   A:2100 X:003C Y:03D2

C2/C8E3 AD DE 30    LDA $30DE  [$00:30DE]   A:0001 X:FA80 Y:2500 ;load timed hit variable
C2/C8E6 3A          DEC A                   A:0002 X:FA80 Y:2500 
C2/C8E7 85 B0       STA $B0    [$00:00B0]   A:0001 X:FA80 Y:2500 
C2/C8E9 10 01       BPL $01    [$C8EC]      A:0001 X:FA80 Y:2500 ;branch if greater than/equal to 0

C2/C8EB 60          RTS                     A:FFFF X:FA80 Y:2500 ;end

level 1
-------
C2/C8EC AE 30 07    LDX $0730  [$00:0730]   A:0001 X:FA80 Y:2500 
C2/C8EF 86 CA       STX $CA    [$00:00CA]   A:0001 X:FC00 Y:2500 
C2/C8F1 A9 00 01    LDA #$0100              A:0001 X:FC00 Y:2500 
C2/C8F4 85 CE       STA $CE    [$00:00CE]   A:0100 X:FC00 Y:2500 
C2/C8F6 BF 45 00 7E LDA $7E0045,x[$7E:FC45] A:0100 X:FC00 Y:2500 ;load base damage
C2/C8FA 85 C2       STA $C2    [$00:00C2]   A:00A6 X:FC00 Y:2500 ;store to register
C2/C8FC A5 B0       LDA $B0    [$00:00B0]   A:00A6 X:FC00 Y:2500 ;load timed hit variable
C2/C8FE D0 02       BNE $02    [$C902]      A:0001 X:FC00 Y:2500 ;branch if not 0 (aka attack is timed perfectly)

C2/C900 46 C2       LSR $C2    [$00:00C2]  			 ;base damage/2

level 2
-------
C2/C902 BF 45 00 7E LDA $7E0045,x[$7E:FC45] A:0001 X:FC00 Y:2500 ;load base damage
C2/C906 18          CLC                     A:00A6 X:FC00 Y:2500 
C2/C907 65 C2       ADC $C2    [$00:00C2]   A:00A6 X:FC00 Y:2500 ;add modified damage to base damage
C2/C909 9F 45 00 7E STA $7E0045,x[$7E:FC45] A:014C X:FC00 Y:2500 ;store as modified damage
C2/C90D BF 41 00 7E LDA $7E0041,x[$7E:FC41] A:014C X:FC00 Y:2500 ;load mortal wound bit
C2/C911 89 80 00    BIT #$0080              A:0080 X:FC00 Y:2500 ;check mortal wound bit
C2/C914 D0 27       BNE $27    [$C93D]      A:0080 X:FC00 Y:2500 ;branch if set

C2/C916 BF 11 00 7E LDA $7E0011,x[$7E:FC11] A:0000 X:FC00 Y:2480
C2/C91A F0 21       BEQ $21    [$C93D]      A:000C X:FC00 Y:2480 
C2/C91C 38          SEC                     A:000C X:FC00 Y:2480 
C2/C91D E5 C2       SBC $C2    [$00:00C2]   A:000C X:FC00 Y:2480 
C2/C91F 10 03       BPL $03    [$C924]      A:C00B X:FC00 Y:2480 

C2/C921 A9 00 00    LDA #$0000              A:C00B X:FC00 Y:2480

C2/C924 9F 11 00 7E STA $7E0011,x[$7E:FC11] A:0000 X:FC00 Y:2480
C2/C928 D0 13       BNE $13    [$C93D]      A:0000 X:FC00 Y:2480

C2/C92A BF 1D 00 7E LDA $7E001D,x[$7E:FC1D] A:0000 X:FC00 Y:2480
C2/C92E 89 01 00    BIT #$0001              A:5C00 X:FC00 Y:2480
C2/C931 D0 0A       BNE $0A    [$C93D]      A:5C00 X:FC00 Y:2480
C2/C933 20 C8 C5    JSR $C5C8  [$C2:C5C8]   A:5C00 X:FC00 Y:2480 ;JSR for monster defeated
C2/C936 E2 20       SEP #$20                A:4000 X:0010 Y:000E 
C2/C938 20 A6 C6    JSR $C6A6  [$C2:C6A6]   A:4000 X:0010 Y:000E ;Flower Bonus: Load status attributes
C2/C93B C2 20       REP #$20                A:4002 X:0010 Y:000E

C2/C93D 60          RTS                     A:0080 X:FC00 Y:2500 

=================================================================

ALLY: Timing for Physical Defense

C2/C93E E2 20       SEP #$20                A:0000 X:0002 Y:FF0F
C2/C940 AE 50 07    LDX $0750  [$00:0750]   A:0000 X:0002 Y:FF0F
C2/C943 86 C8       STX $C8    [$00:00C8]   A:0000 X:FC00 Y:FF0F
C2/C945 20 0A B3    JSR $B30A  [$C2:B30A]   A:0000 X:FC00 Y:FF0F ;load monster stats
C2/C948 85 CF       STA $CF    [$00:00CF]   A:0000 X:FC00 Y:FF0F
C2/C94A AE 30 07    LDX $0730  [$00:0730]   A:0000 X:FC00 Y:FF0F
C2/C94D 86 CA       STX $CA    [$00:00CA]   A:0000 X:FA80 Y:FF0F
C2/C94F 20 0A B3    JSR $B30A  [$C2:B30A]   A:0000 X:FA80 Y:FF0F ;load player stats

C2/C952 85 CE       STA $CE    [$00:00CE]   A:0001 X:FA80 Y:2600 
C2/C954 F0 04       BEQ $04    [$C95A]      A:0001 X:FA80 Y:2600 
C2/C956 A5 CF       LDA $CF    [$00:00CF]   A:0001 X:FA80 Y:2600 
C2/C958 F0 03       BEQ $03    [$C95D]      A:0000 X:FA80 Y:2600 

C2/C95D C2 20       REP #$20                A:0000 X:FA80 Y:2600 ;set 16-bit A
C2/C95F BF 44 00 7E LDA $7E0044,x[$7E:FAC4] A:0000 X:FA80 Y:2600 ;
C2/C963 89 80 00    BIT #$0080              A:8E80 X:FA80 Y:2600 ;check if MISS
C2/C966 D0 01       BNE $01    [$C969]      A:8E80 X:FA80 Y:2600 ;branch if not set

C2/C968 60          RTS					  	 ;end

C2/C969 AD 4C 30    LDA $304C  [$00:304C]   A:8E80 X:FA80 Y:2600 
C2/C96C 38          SEC                     A:00AC X:FA80 Y:2600 
C2/C96D E9 80 00    SBC #$0080              A:00AC X:FA80 Y:2600 
C2/C970 29 FF 00    AND #$00FF              A:002C X:FA80 Y:2600 
C2/C973 8D 4C 30    STA $304C  [$00:304C]   A:002C X:FA80 Y:2600 
C2/C976 85 B0       STA $B0    [$00:00B0]   A:002C X:FA80 Y:2600 
C2/C978 A9 02 00    LDA #$0002              A:002C X:FA80 Y:2600 
C2/C97B 8D D0 30    STA $30D0  [$00:30D0]   A:0002 X:FA80 Y:2600 
C2/C97E A9 50 00    LDA #$0050              A:0002 X:FA80 Y:2600 
C2/C981 8D D2 30    STA $30D2  [$00:30D2]   A:0050 X:FA80 Y:2600 
C2/C984 A9 78 00    LDA #$0078              A:0050 X:FA80 Y:2600 
C2/C987 8D D4 30    STA $30D4  [$00:30D4]   A:0078 X:FA80 Y:2600 
C2/C98A A9 7C 00    LDA #$007C              A:0078 X:FA80 Y:2600 
C2/C98D 8D D6 30    STA $30D6  [$00:30D6]   A:007C X:FA80 Y:2600 
C2/C990 A9 37 D2    LDA #$D237              A:007C X:FA80 Y:2600 
C2/C993 8D 6E 30    STA $306E  [$00:306E]   A:D237 X:FA80 Y:2600 
C2/C996 9C 60 30    STZ $3060  [$00:3060]   A:D237 X:FA80 Y:2600 
C2/C999 A9 01 00    LDA #$0001              A:D237 X:FA80 Y:2600 
C2/C99C 0C 00 30    TSB $3000  [$00:3000]   A:0001 X:FA80 Y:2600 
C2/C99F 22 00 08 00 JSL $000800[$00:0800]   A:0001 X:FA80 Y:2600 ;wait for SA-1 timing range calculation
***
C2/C9A3 AD DE 30    LDA $30DE  [$00:30DE]   A:0001 X:FA80 Y:2600 ;load timing variable from SA-1 [00:00DE]
C2/C9A6 3A          DEC A                   A:0002 X:FA80 Y:2600 
C2/C9A7 3A          DEC A                   A:0001 X:FA80 Y:2600 
C2/C9A8 10 03       BPL $03    [$C9AD]      A:0000 X:FA80 Y:2600 ;branch if greater than/equal to 0

C2/C9AD A5 B0       LDA $B0    [$00:00B0]   A:0000 X:FA80 Y:2600 
C2/C9AF 8D 4C 30    STA $304C  [$00:304C]   A:0068 X:FA80 Y:2600 
C2/C9B2 A9 50 00    LDA #$0050              A:0068 X:FA80 Y:2600 ;load range A for level 1
C2/C9B5 8D D0 30    STA $30D0  [$00:30D0]   A:0050 X:FA80 Y:2600 
C2/C9B8 A9 60 00    LDA #$0060              A:0050 X:FA80 Y:2600 ;load range Y for level 2
C2/C9BB 8D D2 30    STA $30D2  [$00:30D2]   A:0060 X:FA80 Y:2600 
C2/C9BE A9 68 00    LDA #$0068              A:0060 X:FA80 Y:2600 ;load range Z for level 2
C2/C9C1 8D D4 30    STA $30D4  [$00:30D4]   A:0068 X:FA80 Y:2600 
C2/C9C4 A9 78 00    LDA #$0078              A:0068 X:FA80 Y:2600 ;load range B for level 1
C2/C9C7 8D D6 30    STA $30D6  [$00:30D6]   A:0078 X:FA80 Y:2600 
C2/C9CA A9 37 D2    LDA #$D237              A:0078 X:FA80 Y:2600 
C2/C9CD 8D 6E 30    STA $306E  [$00:306E]   A:D237 X:FA80 Y:2600 
C2/C9D0 9C 60 30    STZ $3060  [$00:3060]   A:D237 X:FA80 Y:2600 
C2/C9D3 A9 01 00    LDA #$0001              A:D237 X:FA80 Y:2600 
C2/C9D6 0C 00 30    TSB $3000  [$00:3000]   A:0001 X:FA80 Y:2600 
C2/C9D9 22 00 08 00 JSL $000800[$00:0800]   A:0001 X:FA80 Y:2600 ;wait for SA-1 timing range calculation
***
C2/C9DD AD DE 30    LDA $30DE  [$00:30DE]   A:0001 X:FA80 Y:2600 ;load timing variable
C2/C9E0 3A          DEC A                   A:0001 X:FA80 Y:2600 
C2/C9E1 85 B0       STA $B0    [$00:00B0]   A:0000 X:FA80 Y:2600 
C2/C9E3 10 01       BPL $01    [$C9E6]      A:0000 X:FA80 Y:2600 ;branch if greater than/equal to 0
	60

C2/C9E6 BF 42 00 7E LDA $7E0042,x[$7E:FAC2] A:0000 X:FA80 Y:2600 ;load defense byte
C2/C9EA 09 04 00    ORA #$0004              A:0000 X:FA80 Y:2600 ;set 'block' bit
C2/C9ED 9F 42 00 7E STA $7E0042,x[$7E:FAC2] A:0004 X:FA80 Y:2600 ;store defense byte
C2/C9F1 BF 45 00 7E LDA $7E0045,x[$7E:FAC5] A:0004 X:FA80 Y:2600 ;load base damage
C2/C9F5 85 C2       STA $C2    [$00:00C2]   A:0001 X:FA80 Y:2600 ;store
C2/C9F7 A5 B0       LDA $B0    [$00:00B0]   A:0001 X:FA80 Y:2600 ;load timing variable
C2/C9F9 F0 03       BEQ $03    [$C9FE]      A:0000 X:FA80 Y:2600 ;branch if not 0

C2/C9FB 4C 73 CA    JMP $CA73  [$00:CA73]   			 ;jump to 0 damage routine

C2/C9FE A5 C2       LDA $C2    [$00:00C2]   A:0000 X:FA80 Y:2600 ;load base damage
C2/CA00 4A          LSR A                   A:0001 X:FA80 Y:2600 ;divide by 2, for level 1 timed defense
C2/CA01 85 C2       STA $C2    [$00:00C2]   A:0000 X:FA80 Y:2600 ;store as modified damage
C2/CA03 BF 41 00 7E LDA $7E0041,x[$7E:FAC1] A:0000 X:FA80 Y:2600 ;load status enhancement
C2/CA07 89 80 00    BIT #$0080              A:0478 X:FA80 Y:2600 ;check mortal wound bit
C2/CA0A D0 17       BNE $17    [$CA23]      A:0478 X:FA80 Y:2600 ;branch if set

C2/CA0C BF 11 00 7E LDA $7E0011,x[$7E:FA91] A:0478 X:FA80 Y:2600 ;load (current HP - base damage)
C2/CA10 18          CLC                     A:00CA X:FA80 Y:2600 
C2/CA11 65 C2       ADC $C2    [$00:00C2]   A:00CA X:FA80 Y:2600 ;add back (base damage value / 2)
C2/CA13 9F 11 00 7E STA $7E0011,x[$7E:FA91] A:00CA X:FA80 Y:2600 ;store as current HP
C2/CA17 BF 45 00 7E LDA $7E0045,x[$7E:FAC5] A:00CA X:FA80 Y:2600 ;load numeral display address
C2/CA1B 38          SEC                     A:0001 X:FA80 Y:2600 
C2/CA1C E5 C2       SBC $C2    [$00:00C2]   A:0001 X:FA80 Y:2600 ;subtract modified damage
C2/CA1E 9F 45 00 7E STA $7E0045,x[$7E:FAC5] A:0001 X:FA80 Y:2600 ;store to numeral display address
C2/CA22 60          RTS                     A:0001 X:FA80 Y:2600 

mortal infliction (modified damage: 41)
-----------------
C2/CA23 A9 0F 27    LDA #$270F              A:0480 X:FB00 Y:2600 ;load 9999 constant
C2/CA26 DF 45 00 7E CMP $7E0045,x[$7E:FB45] A:270F X:FB00 Y:2600 ;compare to numeral display
C2/CA2A D0 07       BNE $07    [$CA33]      A:270F X:FB00 Y:2600 ;branch if not 9999 damage

C2/CA2C 85 C2       STA $C2					 ;store 9999 to modified damage
C2/CA2E A9 01 00    LDA #$0001					 ;load 1
C2/CA31 80 0C       BRA $0C	[$CA3F]				 ;always branch

C2/CA33 BF 35 00 7E LDA $7E0035,x[$7E:FB35] A:270F X:FB00 Y:2600 
C2/CA37 38          SEC                     A:0004 X:FB00 Y:2600 
C2/CA38 E5 C2       SBC $C2    [$00:00C2]   A:0004 X:FB00 Y:2600 ;subtract modified damage
C2/CA3A 10 03       BPL $03    [$CA3F]      A:FFDB X:FB00 Y:2600 ;branch if greater than/equal to 0
C2/CA3C A9 00 00    LDA #$0000              A:FFDB X:FB00 Y:2600 ;load 0
C2/CA3F 9F 11 00 7E STA $7E0011,x[$7E:FB11] A:0000 X:FB00 Y:2600 ;store to current HP
C2/CA43 F0 27       BEQ $27    [$CA6C]      A:0000 X:FB00 Y:2600 ;branch if current HP at 0

C2/CA6C A5 C2       LDA $C2    [$00:00C2]   A:0000 X:FB00 Y:2600 ;load modified damage
C2/CA6E 9F 45 00 7E STA $7E0045,x[$7E:FB45] A:0029 X:FB00 Y:2600 ;store to numeral display address
C2/CA72 60          RTS                     A:0029 X:FB00 Y:2600 ;end

0 damage routine
----------------
C2/CA73 BF 41 00 7E LDA $7E0041,x[$7E:FAC1] A:0001 X:FA80 Y:2600 ;load status enhancement
C2/CA77 89 80 00    BIT #$0080              A:0478 X:FA80 Y:2600 ;check mortal wound bit
C2/CA7A D0 13       BNE $13    [$CA8F]      A:0478 X:FA80 Y:2600 ;branch if set

C2/CA7C BF 11 00 7E LDA $7E0011,x[$7E:FA91] A:0478 X:FA80 Y:2600 ;load (current HP - base damage)
C2/CA80 18          CLC                     A:00CA X:FA80 Y:2600 
C2/CA81 65 C2       ADC $C2    [$00:00C2]   A:00CA X:FA80 Y:2600 ;add back base damage value
C2/CA83 9F 11 00 7E STA $7E0011,x[$7E:FA91] A:00CB X:FA80 Y:2600 ;store back to current HP
C2/CA87 A9 00 00    LDA #$0000              A:00CB X:FA80 Y:2600 ;load 0
C2/CA8A 9F 45 00 7E STA $7E0045,x[$7E:FAC5] A:0000 X:FA80 Y:2600 ;store to numeral display address
C2/CA8E 60          RTS                     A:0000 X:FA80 Y:2600 ;end

=================================================================
ALLY/SPELLS: Additional timing effects for all ally spells

C2/CAC6 AD 2C 07
C2/CAC9 0A
C2/CACA AA
C2/CACB 7C CE CA

0E CB	;Jump
D8 CB	;Fire Orb
D8 CB	;Super Jump
D8 CB	;Super Flame
44 CC	;Ultra Jump
44 CC	;Ultra Flame
0E CB	;Therapy
1E CD	;Group Hug
3F CD	;Sleepy Time
A2 CD	;Come Back
3F CD	;Mute
E1 CD	;Psych Bomb
75 CE	;Terrorize
75 CE	;Poison Gas
0E CB	;Crusher
E1 CD	;Bowser Crush
85 CE	;Geno Beam
22 CF	;Geno Boost
63 CF	;Geno Whirl
85 CE	;Geno Blast
85 CE	;Geno Flash
1E CD	;Thunderbolt
0E CB	;HP Rain
C2 CF	;Psychopath
0E CB	;Shocker
75 CE	;Snowy
DF CF	;Star Rain
0E CB	;Dummy
0E CB	;Dummy
0E CB	;Dummy
0E CB 	;Dummy
0E CB	;Dummy

0E CB	- 1 timing for x1.25 or x1.5 dmg	(Jump, Therapy, Crusher, HP Rain, Shocker, x5 Dummy)
D8 CB	- multiple button presses 		(Fire Orb, Super Jump, Super Flame)
44 CC	- 1 + more targets w/ presses		(Ultra Jump, Ultra Flame)
1E CD	- 1 timing for x1.25 dmg only		(Group Hug, Thunderbolt)
3F CD	- rotate. 1 target, if timed: all	(Sleepy Time, Mute)
A2 CD	- timed heals all HP to target 0	(Come Back)
E1 CD	- button mash				(Psych Bomb, Bowser Crush)
75 CE	- rotate only				(Terrorize, Poison Gas, Snowy)
85 CE	- Charge only				(Geno Beam, Geno Blast, Geno Flash)
22 CF	- timed gives target Defense Up Buff	(Geno Boost)
63 CF	- timed for 9999+set enemy HP to 0	(Geno Whirl)
C2 CF	- time to activate HP read		(Psychopath)
DF CF	- timed jumps				(Star Rain)

=================================================================
SPELL TIMINGS: multiple button presses (Fire Orb, Super Jump, Super Flame)

C2/CBD8 A9 37 D2    LDA #$D237              A:0002 X:0002 Y:0001  
C2/CBDB 8D 6E 30    STA $306E  [$00:306E]   A:D237 X:0002 Y:0001  
C2/CBDE 9C 60 30    STZ $3060  [$00:3060]   A:D237 X:0002 Y:0001  
C2/CBE1 A9 01 00    LDA #$0001              A:D237 X:0002 Y:0001  
C2/CBE4 0C 00 30    TSB $3000  [$00:3000]   A:0001 X:0002 Y:0001  
C2/CBE7 22 00 08 00 JSL $000800[$00:0800]   A:0001 X:0002 Y:0001

C2/CBEB AD DE 30    LDA $30DE  [$00:30DE]   A:0001 X:0002 Y:0001  
C2/CBEE 3A          DEC A                   A:0000 X:0002 Y:0001  
C2/CBEF 85 B0       STA $B0    [$00:00B0]   A:FFFF X:0002 Y:0001  
C2/CBF1 10 01       BPL $01    [$CBF4]      A:FFFF X:0002 Y:0001  ;Is timing met? Jump.
C2/CBF3 60          RTS                     A:FFFF X:0002 Y:0001 

C2/CBF4 AE 50 07    LDX $0750  [$00:0750]   A:FFFF X:0002 Y:0001 ;
C2/CBF7 86 C8       STX $C8    [$00:00C8]   A:FFFF X:FA80 Y:0001  
C2/CBF9 AE 30 07    LDX $0730  [$00:0730]   A:FFFF X:FA80 Y:0001  
C2/CBFC 86 CA       STX $CA    [$00:00CA]   A:FFFF X:FC00 Y:0001  
C2/CBFE A9 00 01    LDA #$0100              A:FFFF X:FC00 Y:0001  
C2/CC01 85 CE       STA $CE    [$00:00CE]   A:0100 X:FC00 Y:0001  
C2/CC03 BF 5E 00 7E LDA $7E005E,x[$7E:FC5E] A:0100 X:FC00 Y:0001 ;Load variable from monster to add to their damage (NOTE: This value on Allies is used for Weapon timings)
C2/CC07 85 C2       STA $C2    [$00:00C2]   A:0001 X:FC00 Y:0001
=================================================================
SPELL TIMINGS: 1 timing for x1.25 dmg only (Group Hug, Thunderbolt)

C2/CD1E A9 37 D2    LDA #$D237              A:FF00 X:62E0 Y:3240
C2/CD21 8D 6E 30    STA $306E  [$00:306E]   A:FF00 X:62E0 Y:3240
C2/CD24 9C 60 30    STZ $3060  [$00:3060]   A:FF00 X:62E0 Y:3240
C2/CD27 A9 01 00    LDA #$0001              A:FF00 X:62E0 Y:3240
C2/CD2A 0C 00 30    TSB $3000  [$00:3000]   A:FF00 X:62E0 Y:3240
C2/CD2D 22 00 08 00 JSL $000800[$00:0800]   A:FF00 X:62E0 Y:3240
C2/CD31 AD DE 30    LDA $30DE  [$00:30DE]   A:FF00 X:62E0 Y:3240
C2/CD34 3A          DEC A                   A:FF00 X:62E0 Y:3240
C2/CD35 85 B0       STA $B0    [$00:00B0]   A:FF00 X:62E0 Y:3240
C2/CD37 10 01       BPL $01    [$CD3A]      A:FF00 X:62E0 Y:3240
C2/CD39 60          RTS                     A:FF00 X:62E0 Y:3240
C2/CD3A 64 B0       STZ $B0    [$00:00B0]   A:FF00 X:62E0 Y:3240
C2/CD3C 4C 2A CB    JMP $CB2A  [$7F:CB2A]   A:FF00 X:62E0 Y:3240

->JMP
C2/CB2A E2 20       SEP #$20                A:3C80 X:3C00 Y:0100
C2/CB2C AE 50 07    LDX $0750  [$00:0750]   A:3C80 X:3C00 Y:0100	;load character stats
C2/CB2F 86 C8       STX $C8    [$00:00C8]   A:3C80 X:3C00 Y:0100
C2/CB31 20 0A B3    JSR $B30A  [$7F:B30A]   A:3C80 X:3C00 Y:0100
C2/CB34 85 CF       STA $CF    [$00:00CF]   A:3C80 X:3C00 Y:0100
C2/CB36 A2 2E 07    LDX #$072E              A:3C80 X:3C00 Y:0100
C2/CB39 86 C6       STX $C6    [$00:00C6]   A:3C80 X:3C00 Y:0100

C2/CB3B E2 20       SEP #$20                A:3C80 X:3C00 Y:0100
C2/CB3D A4 C6       LDY $C6    [$00:00C6]   A:3C80 X:3C00 Y:0100
C2/CB3F C8          INY                     A:3C80 X:3C00 Y:0100
C2/CB40 C8          INY                     A:3C80 X:3C00 Y:0100
C2/CB41 B6 00       LDX $00,y  [$00:0100]   A:3C80 X:3C00 Y:0100
C2/CB43 D0 03       BNE $03    [$CB48]      A:3C80 X:3C00 Y:0100
C2/CB45 4C D5 CB    JMP $CBD5  [$7F:CBD5]   A:3C80 X:3C00 Y:0100
C2/CB48 84 C6       STY $C6    [$00:00C6]   A:3C80 X:3C00 Y:0100
C2/CB4A 86 CA       STX $CA    [$00:00CA]   A:3C80 X:3C00 Y:0100
C2/CB4C 20 0A B3    JSR $B30A  [$7F:B30A]   A:3C80 X:3C00 Y:0100
C2/CB4F 85 CE       STA $CE    [$00:00CE]   A:3C80 X:3C00 Y:0100
C2/CB51 BF 44 00 7E LDA $7E0044,x[$7E:3C44] A:3C80 X:3C00 Y:0100
C2/CB55 89 80       BIT #$80                A:3C80 X:3C00 Y:0100
C2/CB57 F0 E2       BEQ $E2    [$CB3B]      A:3C80 X:3C00 Y:0100
C2/CB59 C2 20       REP #$20                A:3C80 X:3C00 Y:0100
C2/CB5B BF 45 00 7E LDA $7E0045,x[$7E:3C45] A:3C80 X:3C00 Y:0100
C2/CB5F 29 00 80    AND #$8000              A:3C80 X:3C00 Y:0100
C2/CB62 85 CC       STA $CC    [$00:00CC]   A:3C80 X:3C00 Y:0100
C2/CB64 BF 45 00 7E LDA $7E0045,x[$7E:3C45] A:3C80 X:3C00 Y:0100
C2/CB68 29 FF 7F    AND #$7FFF              A:3C80 X:3C00 Y:0100
C2/CB6B 9F 45 00 7E STA $7E0045,x[$7E:3C45] A:3C80 X:3C00 Y:0100
C2/CB6F 4A          LSR A                   A:3C80 X:3C00 Y:0100
C2/CB70 A4 B0       LDY $B0    [$00:00B0]   A:3C80 X:3C00 Y:0100
C2/CB72 D0 01       BNE $01    [$CB75]      A:3C80 X:3C00 Y:0100
C2/CB74 4A          LSR A                   A:3C80 X:3C00 Y:0100
C2/CB75 85 C2       STA $C2    [$00:00C2]   A:3C80 X:3C00 Y:0100
C2/CB77 18          CLC                     A:3C80 X:3C00 Y:0100
C2/CB78 7F 45 00 7E ADC $7E0045,x[$7E:3C45] A:3C80 X:3C00 Y:0100
C2/CB7C C9 0F 27    CMP #$270F              A:3C80 X:3C00 Y:0100
C2/CB7F 30 03       BMI $03    [$CB84]      A:3C80 X:3C00 Y:0100

C2/CB81 A9 0F 27    LDA #$270F              A:3C80 X:3C00 Y:0100

C2/CB84 9F 45 00 7E STA $7E0045,x[$7E:3C45] A:3C80 X:3C00 Y:0100
C2/CB88 A5 C2       LDA $C2    [$00:00C2]   A:3C80 X:3C00 Y:0100
C2/CB8A F0 AF       BEQ $AF    [$CB3B]      A:3C80 X:3C00 Y:0100

C2/CB8C A5 CC       LDA $CC    [$00:00CC]   A:3C80 X:3C00 Y:0100
C2/CB8E 30 22       BMI $22    [$CBB2]      A:3C80 X:3C00 Y:0100
C2/CB90 BF 11 00 7E LDA $7E0011,x[$7E:3C11] A:3C80 X:3C00 Y:0100
C2/CB94 F0 A5       BEQ $A5    [$CB3B]      A:3C80 X:3C00 Y:0100

C2/CB96 38          SEC                     A:3C80 X:3C00 Y:0100
C2/CB97 E5 C2       SBC $C2    [$00:00C2]   A:3C80 X:3C00 Y:0100
C2/CB99 10 03       BPL $03    [$CB9E]      A:3C80 X:3C00 Y:0100

C2/CB9B A9 00 00    LDA #$0000              A:3C80 X:3C00 Y:0100

C2/CB9E 9F 11 00 7E STA $7E0011,x[$7E:3C11] A:3C80 X:3C00 Y:0100
C2/CBA2 D0 97       BNE $97    [$CB3B]      A:3C80 X:3C00 Y:0100

C2/CBA4 BF 1D 00 7E LDA $7E001D,x[$7E:3C1D] A:3C80 X:3C00 Y:0100	;Check if monster allowed death
C2/CBA8 89 01 00    BIT #$0001              A:3C80 X:3C00 Y:0100
C2/CBAB D0 8E       BNE $8E    [$CB3B]      A:3C80 X:3C00 Y:0100

C2/CBAD 20 C8 C5    JSR $C5C8  [$7F:C5C8]   A:3C80 X:3C00 Y:0100
C2/CBB0 80 89       BRA $89    [$CB3B]      A:3C80 X:3C00 Y:0100

C2/CBB2 BF 45 00 7E LDA $7E0045,x[$7E:3C45] A:3C80 X:3C00 Y:0100
C2/CBB6 09 00 80    ORA #$8000              A:3C80 X:3C00 Y:0100
C2/CBB9 9F 45 00 7E STA $7E0045,x[$7E:3C45] A:3C80 X:3C00 Y:0100
C2/CBBD BF 11 00 7E LDA $7E0011,x[$7E:3C11] A:3C80 X:3C00 Y:0100
C2/CBC1 18          CLC                     A:3C80 X:3C00 Y:0100
C2/CBC2 65 C2       ADC $C2    [$00:00C2]   A:3C80 X:3C00 Y:0100
C2/CBC4 DF 13 00 7E CMP $7E0013,x[$7E:3C13] A:3C80 X:3C00 Y:0100
C2/CBC8 30 04       BMI $04    [$CBCE]      A:3C80 X:3C00 Y:0100
C2/CBCA BF 13 00 7E LDA $7E0013,x[$7E:3C13] A:3C80 X:3C00 Y:0100
C2/CBCE 9F 11 00 7E STA $7E0011,x[$7E:3C11] A:3C80 X:3C00 Y:0100
C2/CBD2 4C 3B CB    JMP $CB3B  [$7F:CB3B]   A:3C80 X:3C00 Y:0100

C2/CBD5 C2 20       REP #$20                A:3C80 X:3C00 Y:0100
C2/CBD7 60          RTS                     A:3C80 X:3C00 Y:0100

=================================================================
SPELL TIMING: Sleepy Time, Mute
C2/CD3F A5 B0       LDA $B0    [$00:00B0]   A:0080 X:0000 Y:0002	
C2/CD41 C5 B2       CMP $B2    [$00:00B2]   A:0080 X:0000 Y:0002	
C2/CD43 10 03       BPL $03    [$CD48]      A:0080 X:0000 Y:0002	
C2/CD45 64 B0       STZ $B0    [$00:00B0]   A:0080 X:0000 Y:0002	;Set B0 to 0
C2/CD47 60          RTS                     A:0080 X:0000 Y:0002	;Return

C2/CD48 A9 01 00    LDA #$0001              A:0080 X:0000 Y:0002	;
C2/CD4B 85 B0       STA $B0    [$00:00B0]   A:0080 X:0000 Y:0002	;Communicates with animation script to play new animation
C2/CD4D AD 30 07    LDA $0730  [$00:0730]   A:0080 X:0000 Y:0002	
C2/CD50 8D 8E 07    STA $078E  [$00:078E]   A:0080 X:0000 Y:0002	
C2/CD53 A2 00 00    LDX #$0000              A:0080 X:0000 Y:0002	
C2/CD56 86 C4       STX $C4    [$00:00C4]   A:0080 X:0000 Y:0002	

C2/CD58 9B          TXY                     A:0080 X:0000 Y:0002	
C2/CD59 BF F0 A1 C2 LDA $C2A1F0,x[$C2:A1F0] A:0080 X:0000 Y:0002	;Load pointers to all stats of monsters in battle
C2/CD5D CD 8E 07    CMP $078E  [$00:078E]   A:0080 X:0000 Y:0002	
C2/CD60 F0 14       BEQ $14    [$CD76]      A:0080 X:0000 Y:0002	
C2/CD62 AA          TAX                     A:0080 X:0000 Y:0002	
C2/CD63 BF 00 00 7E LDA $7E0000,x[$7E:0000] A:0080 X:0000 Y:0002	;Loads monster's mortal status (if disabled/removed)
C2/CD67 29 C0 00    AND #$00C0              A:0080 X:0000 Y:0002	;Clears bits 6 and 7 (bit6=disabled/bit7=removed)
C2/CD6A D0 0A       BNE $0A    [$CD76]      A:0080 X:0000 Y:0002	;Branch if monster alive
C2/CD6C 8A          TXA                     A:0080 X:0000 Y:0002	
C2/CD6D A6 C4       LDX $C4    [$00:00C4]   A:0080 X:0000 Y:0002	
C2/CD6F 9D 30 07    STA $0730,x[$00:0730]   A:0080 X:0000 Y:0002	
C2/CD72 E8          INX                     A:0080 X:0000 Y:0002	
C2/CD73 E8          INX                     A:0080 X:0000 Y:0002	
C2/CD74 86 C4       STX $C4    [$00:00C4]   A:0080 X:0000 Y:0002	
C2/CD76 BB          TYX                     A:0080 X:0000 Y:0002	
C2/CD77 E8          INX                     A:0080 X:0000 Y:0002	
C2/CD78 E8          INX                     A:0080 X:0000 Y:0002	
C2/CD79 E0 0F 00    CPX #$000F              A:0080 X:0000 Y:0002	
C2/CD7C 30 DA       BMI $DA    [$CD58]      A:0080 X:0000 Y:0002	;Rerun monster vital status check (Jumps to $CD58)
C2/CD7E A9 00 00    LDA #$0000              A:0080 X:0000 Y:0002	
C2/CD81 A6 C4       LDX $C4    [$00:00C4]   A:0080 X:0000 Y:0002	
C2/CD83 9D 30 07    STA $0730,x[$00:0730]   A:0080 X:0000 Y:0002	
C2/CD86 20 E6 BC    JSR $BCE6  [$7F:BCE6]   A:0080 X:0000 Y:0002	;Jump to C2/BCE6 (writes spell stats)
C2/CD89 A2 00 00    LDX #$0000              A:0080 X:0000 Y:0002	
C2/CD8C BD 30 07    LDA $0730,x[$00:0730]   A:0080 X:0000 Y:0002	
C2/CD8F F0 04       BEQ $04    [$CD95]      A:0080 X:0000 Y:0002	
C2/CD91 E8          INX                     A:0080 X:0000 Y:0002	
C2/CD92 E8          INX                     A:0080 X:0000 Y:0002	
C2/CD93 80 F7       BRA $F7    [$CD8C]      A:0080 X:0000 Y:0002	
C2/CD95 AD 8E 07    LDA $078E  [$00:078E]   A:0080 X:0000 Y:0002	
C2/CD98 9D 30 07    STA $0730,x[$00:0730]   A:0080 X:0000 Y:0002	
C2/CD9B A9 00 00    LDA #$0000              A:0080 X:0000 Y:0002	
C2/CD9E 9D 32 07    STA $0732,x[$00:0732]   A:0080 X:0000 Y:0002	
C2/CDA1 60          RTS                     A:0080 X:0000 Y:0002	
==================================================================
SPELL TIMINGS: Charge only (Geno Beam, Geno Blast, Geno Flash)

C2/CE85 AE 50 07    LDX $0750  [7E:0750]    A:0000 X:0000 Y:1484
C2/CE88 86 C8       STX $C8    [00:00C8]    A:0000 X:0000 Y:1484
C2/CE8A A2 2E 07    LDX #072E               A:0000 X:0000 Y:1484
C2/CE8D 86 C6       STX $C6    [00:00C6]    A:0000 X:0000 Y:1484
C2/CE8F A2 00 01    LDX #0100               A:0000 X:0000 Y:1484
C2/CE92 86 C2       STX $C2    [00:00C2]    A:0000 X:0000 Y:1484
C2/CE94 E2 20       SEP #20                 A:0000 X:0000 Y:1484
C2/CE96 A4 C6       LDY $C6    [$00:00C6]   A:0000 X:0000 Y:1484
C2/CE98 C8          INY                     A:0000 X:0000 Y:1484
C2/CE99 C8          INY                     A:0000 X:0000 Y:1484
C2/CE9A B6 00       LDX $00,y  [$00:1484]   A:0000 X:0000 Y:1484
C2/CE9C F0 5A       BEQ $5A    [$CEF8]      A:0000 X:0000 Y:1484
C2/CE9E 84 C6       STY $C6    [$00:00C6]   A:0000 X:0000 Y:1484
C2/CEA0 86 CA       STX $CA    [$00:00CA]   A:0000 X:0000 Y:1484
C2/CEA2 BF 44 00 7E LDA $7E0044,x[$7E:0044] A:0000 X:0000 Y:1484
C2/CEA6 89 80       BIT #$80                A:0000 X:0000 Y:1484
C2/CEA8 F0 EA       BEQ $EA    [$CE94]      A:0000 X:0000 Y:1484
C2/CEAA BF 40 00 7E LDA $7E0040,x[$7E:0040] A:0000 X:0000 Y:1484
C2/CEAE 89 80       BIT #$80                A:0000 X:0000 Y:1484
C2/CEB0 D0 E2       BNE $E2    [$CE94]      A:0000 X:0000 Y:1484
C2/CEB2 BF 41 00 7E LDA $7E0041,x[$7E:0041] A:0000 X:0000 Y:1484
C2/CEB6 89 01       BIT #$01                A:0000 X:0000 Y:1484
C2/CEB8 D0 DA       BNE $DA    [$CE94]      A:0000 X:0000 Y:1484
C2/CEBA C2 20       REP #$20                A:0000 X:0000 Y:1484
C2/CEBC BF 45 00 7E LDA $7E0045,x[$7E:0045] A:0000 X:0000 Y:1484
C2/CEC0 85 C2       STA $C2    [$00:00C2]   A:0000 X:0000 Y:1484
C2/CEC2 A5 B0       LDA $B0    [$00:00B0]   A:0000 X:0000 Y:1484 ;load how many timings were gathered
C2/CEC4 0A          ASL A                   A:0000 X:0000 Y:1484
C2/CEC5 AA          TAX                     A:0000 X:0000 Y:1484
C2/CEC6 FC FB CE    JSR ($CEFB,x)[$7E:0000] A:0000 X:0000 Y:1484 ;get charge timing damage value, added to final output
C2/CEC9 A6 CA       LDX $CA    [$00:00CA]   A:0000 X:0000 Y:1484
C2/CECB BF 45 00 7E LDA $7E0045,x[$7E:0045] A:0000 X:0000 Y:1484
C2/CECF 18          CLC                     A:0000 X:0000 Y:1484
C2/CED0 65 C2       ADC $C2    [$00:00C2]   A:0000 X:0000 Y:1484
C2/CED2 9F 45 00 7E STA $7E0045,x[$7E:0045] A:0000 X:0000 Y:1484
C2/CED6 BF 11 00 7E LDA $7E0011,x[$7E:0011] A:0000 X:0000 Y:1484
C2/CEDA F0 B8       BEQ $B8    [$CE94]      A:0000 X:0000 Y:1484
C2/CEDC 38          SEC                     A:0000 X:0000 Y:1484
C2/CEDD E5 C2       SBC $C2    [$00:00C2]   A:0000 X:0000 Y:1484
C2/CEDF 10 03       BPL $03    [$CEE4]      A:0000 X:0000 Y:1484
C2/CEE1 A9 00 00    LDA #$0000              A:0000 X:0000 Y:1484
C2/CEE4 9F 11 00 7E STA $7E0011,x[$7E:0011] A:0000 X:0000 Y:1484
C2/CEE8 D0 AA       BNE $AA    [$CE94]      A:0000 X:0000 Y:1484
C2/CEEA BF 1D 00 7E LDA $7E001D,x[$7E:001D] A:0000 X:0000 Y:1484
C2/CEEE 89 01 00    BIT #$0001              A:0000 X:0000 Y:1484
C2/CEF1 D0 A1       BNE $A1    [$CE94]      A:0000 X:0000 Y:1484
C2/CEF3 20 C8 C5    JSR $C5C8  [$7E:C5C8]   A:0000 X:0000 Y:1484
C2/CEF6 80 9C       BRA $9C    [$CE94]      A:0000 X:0000 Y:1484
C2/CEF8 C2 20       REP #$20                A:0000 X:0000 Y:1484
C2/CEFA 60          RTS                     A:0000 X:0000 Y:1484

C2/CEFB 05 CF	;x0.25
	0C CF	;x0.5
	12 CF	;x0.75
	1E CF	;x1
	1F CF	;x0

C2/CF05 A5 C2       LDA $C2    [$00:00C2]   A:0000 X:0000 Y:1484
C2/CF07 4A          LSR A                   A:0000 X:0000 Y:1484
C2/CF08 4A          LSR A                   A:0000 X:0000 Y:1484
C2/CF09 85 C2       STA $C2    [$00:00C2]   A:0000 X:0000 Y:1484
C2/CF0B 60          RTS                     A:0000 X:0000 Y:1484

C2/CF0C A5 C2       LDA $C2    [$00:00C2]   A:0000 X:0000 Y:1484
C2/CF0E 4A          LSR A                   A:0000 X:0000 Y:1484
C2/CF0F 85 C2       STA $C2    [$00:00C2]   A:0000 X:0000 Y:1484
C2/CF11 60          RTS                     A:0000 X:0000 Y:1484

C2/CF12 A5 C2       LDA $C2    [$00:00C2]   A:0000 X:0000 Y:1484
C2/CF14 4A          LSR A                   A:0000 X:0000 Y:1484
C2/CF15 85 C4       STA $C4    [$00:00C4]   A:0000 X:0000 Y:1484
C2/CF17 4A          LSR A                   A:0000 X:0000 Y:1484
C2/CF18 18          CLC                     A:0000 X:0000 Y:1484
C2/CF19 65 C4       ADC $C4    [$00:00C4]   A:0000 X:0000 Y:1484
C2/CF1B 85 C2       STA $C2    [$00:00C2]   A:0000 X:0000 Y:1484
C2/CF1D 60          RTS                     A:0000 X:0000 Y:1484

C2/CF1E 60          RTS                     A:0000 X:0000 Y:1484

C2/CF1F 64 C2       STZ $C2    [$00:00C2]   A:0000 X:0000 Y:1484
C2/CF21 60          RTS                     A:0000 X:0000 Y:1484





=================================================================
load timing for Geno Boost
C2/CF22 A9 37 D2    LDA #$D237              A:0000 X:0000 Y:1484
C2/CF25 8D 6E 30    STA $306E  [$7E:306E]   A:0000 X:0000 Y:1484 
C2/CF28 9C 60 30    STZ $3060  [$7E:3060]   A:0000 X:0000 Y:1484
C2/CF2B A9 01 00    LDA #$0001              A:0000 X:0000 Y:1484
C2/CF2E 0C 00 30    TSB $3000  [$7E:3000]   A:0000 X:0000 Y:1484
C2/CF31 22 00 08 00 JSL $000800[$00:0800]   A:0000 X:0000 Y:1484

C2/CF35 AD DE 30    LDA $30DE  [$00:30DE]   A:0001 X:0022 Y:0002 ;load timing variable
C2/CF38 3A          DEC A                   A:0002 X:0022 Y:0002 
C2/CF39 85 B0       STA $B0    [$00:00B0]   A:0001 X:0022 Y:0002 
C2/CF3B 10 01       BPL $01    [$CF3E]      A:0001 X:0022 Y:0002 ;branch if greater than 0

C2/CF3D 60          RTS

C2/CF3E AE 30 07    LDX $0730  [$00:0730]   A:0001 X:0022 Y:0002 ;load RAM address for slot 1
C2/CF41 86 CA       STX $CA    [$00:00CA]   A:0001 X:FA80 Y:0002 
C2/CF43 A9 01 01    LDA #$0101              A:0001 X:FA80 Y:0002 
C2/CF46 85 CE       STA $CE    [$00:00CE]   A:0101 X:FA80 Y:0002 
C2/CF48 BF 44 00 7E LDA $7E0044,x[$7E:FAC4] A:0101 X:FA80 Y:0002 
C2/CF4C 89 80 00    BIT #$0080              A:00C0 X:FA80 Y:0002 
C2/CF4F D0 06       BNE $06    [$CF57]      A:00C0 X:FA80 Y:0002 

C2/CF51 A9 FF FF    LDA #$FFFF             
C2/CF54 85 B0       STA $B0    [$00:00B0]  
C2/CF56 60          RTS                    

C2/CF57 BF 41 00 7E LDA $7E0041,x[$7E:FAC1] A:00C0 X:FA80 Y:0002 ;load spell's status enhancement byte
C2/CF5B 09 60 00    ORA #$0060              A:0018 X:FA80 Y:0002 ;set 'defense up' bit
C2/CF5E 9F 41 00 7E STA $7E0041,x[$7E:FAC1] A:0078 X:FA80 Y:0002 ;store as current status enhancement
C2/CF62 60          RTS                     A:0078 X:FA80 Y:0002 ;end

=================================================================
Jump from Star Rain
C2/CFDF A9 37 D2    LDA #$D237              A:0080 X:0000 Y:0003
C2/CFE2 8D 6E 30    STA $306E  [$00:306E]   A:0080 X:0000 Y:0003
C2/CFE5 9C 60 30    STZ $3060  [$00:3060]   A:0080 X:0000 Y:0003
C2/CFE8 A9 01 00    LDA #$0001              A:0080 X:0000 Y:0003
C2/CFEB 0C 00 30    TSB $3000  [$00:3000]   A:0080 X:0000 Y:0003
C2/CFEE 22 00 08 00 JSL $000800[$00:0800]   A:0080 X:0000 Y:0003
C2/CFF2 AD DE 30    LDA $30DE  [$00:30DE]   A:0080 X:0000 Y:0003
C2/CFF5 3A          DEC A                   A:0080 X:0000 Y:0003
C2/CFF6 85 B0       STA $B0    [$00:00B0]   A:0080 X:0000 Y:0003

C2/CFF8 10 01       BPL $01    [$CFFB]      A:0080 X:0000 Y:0003
C2/CFFA 60          RTS                     A:0080 X:0000 Y:0003

C2/CFFB AE 50 07    LDX $0750  [$00:0750]   A:0080 X:0000 Y:0003
C2/CFFE 86 C8       STX $C8    [$00:00C8]   A:0080 X:0000 Y:0003

C2/D000 A2 2E       LDX #$2E                A:0080 X:0000 Y:0003
C2/D002 07 86       ORA [$86]  [$00:0000]   A:0080 X:0000 Y:0003
C2/D004 C6 A9       DEC $A9    [$00:00A9]   A:0080 X:0000 Y:0003
C2/D006 00 01       BRK #$01                A:0080 X:0000 Y:0003
C2/D008 85 CE       STA $CE    [$00:00CE]   A:0080 X:0000 Y:0003

//
C2/D00A A4 C6       LDY $C6    [$00:00C6]   A:0080 X:0000 Y:0003
C2/D00C C8          INY                     A:0080 X:0000 Y:0003
C2/D00D C8          INY                     A:0080 X:0000 Y:0003
C2/D00E B6 00       LDX $00,y  [$00:0003]   A:0080 X:0000 Y:0003
C2/D010 F0 40       BEQ $40    [$D052]      A:0080 X:0000 Y:0003	;jump to return

C2/D012 84 C6       STY $C6    [$00:00C6]   A:0080 X:0000 Y:0003
C2/D014 86 CA       STX $CA    [$00:00CA]   A:0080 X:0000 Y:0003
C2/D016 BF 44 00 7E LDA $7E0044,x[$7E:0044] A:0080 X:0000 Y:0003
C2/D01A 89 80 00    BIT #$0080              A:0080 X:0000 Y:0003
C2/D01D F0 EB       BEQ $EB    [$D00A]      A:0080 X:0000 Y:0003

C2/D01F BF 5E 00 7E LDA $7E005E,x[$7E:005E] A:0080 X:0000 Y:0003
C2/D023 85 C2       STA $C2    [$00:00C2]   A:0080 X:0000 Y:0003
C2/D025 BF 45 00 7E LDA $7E0045,x[$7E:0045] A:0080 X:0000 Y:0003
C2/D029 18          CLC                     A:0080 X:0000 Y:0003
C2/D02A 65 C2       ADC $C2    [$00:00C2]   A:0080 X:0000 Y:0003
C2/D02C 9F 45 00 7E STA $7E0045,x[$7E:0045] A:0080 X:0000 Y:0003
C2/D030 BF 11 00 7E LDA $7E0011,x[$7E:0011] A:0080 X:0000 Y:0003
C2/D034 F0 D4       BEQ $D4    [$D00A]      A:0080 X:0000 Y:0003

C2/D036 38          SEC                     A:0080 X:0000 Y:0003
C2/D037 E5 C2       SBC $C2    [$00:00C2]   A:0080 X:0000 Y:0003
C2/D039 10 03       BPL $03    [$D03E]      A:0080 X:0000 Y:0003

C2/D03B A9 00 00    LDA #$0000              A:0080 X:0000 Y:0003
C2/D03E 9F 11 00 7E STA $7E0011,x[$7E:0011] A:0080 X:0000 Y:0003
C2/D042 D0 C6       BNE $C6    [$D00A]      A:0080 X:0000 Y:0003

C2/D044 BF 1D 00 7E LDA $7E001D,x[$7E:001D] A:0080 X:0000 Y:0003
C2/D048 89 01 00    BIT #$0001              A:0080 X:0000 Y:0003
C2/D04B D0 BD       BNE $BD    [$D00A]      A:0080 X:0000 Y:0003

C2/D04D 20 C8 C5    JSR $C5C8  [$7F:C5C8]   A:0080 X:0000 Y:0003
C2/D050 80 B8       BRA $B8    [$D00A]      A:0080 X:0000 Y:0003

C2/D052 60          RTS                     A:0080 X:0000 Y:0003



C2/D09F 9B BD 30 07 F0 27 AA BF 40 00 7E 89 80 01 F0 05 A9 00 00 80 0F BF 45 00 7E F0 09 4A 4A 4A 4A D0 03 A9 01 00 9F 5E 00 7E BB E8 E8
C2/>>>> 80 D3		;Jump back to $D09F
C2/>>>> 60	
=================================================================
Geno Whirl
C2/CF63

C2/CFAE A9 0F 27	;load 9999 for Geno Whirl

=================================================================

load current HP = max HP for Come Back
C2/CDA2

C2/CDD1 BF 13 00 7E ;load max HP
C2/CDD5 9F 11 00 7E ;save current HP
=================================================================
SPELLS: Damage modifying calculations for all spells
DISASSEMBLER NOTE: This is calculated before timings begin.
C2/D053 AD 2C 07
C2/D056 0A
C2/D057 AA
C2/D058 7C 5B D0

C2/D05B	9B D0	;Jump
C2/D05D	9C D0	;Fire Orb
C2/D05F	77 D1	;Super Jump
C2/D061	9C D0	;Super Flame
C2/D063	FB D0	;Ultra Jump
C2/D065	4F D1	;Ultra Flame
C2/D067	9B D0	;Therapy
C2/D069	9B D0	;Group Hug
C2/D06B	9B D0	;Sleepy Time
C2/D06D	9B D0	;Come Back
C2/D06F	9B D0	;Mute
C2/D071	9C D0	;Psych Bomb
C2/D073	9C D0	;Terrorize
C2/D075	9C D0	;Poison Gas
C2/D077	9B D0	;Crusher
C2/D079	9C D0	;Bowser Crush
C2/D07B	9B D0	;Geno Beam
C2/D07D	9B D0	;Geno Boost
C2/D07F	9B D0	;Geno Whirl
C2/D081	9B D0	;Geno Blast
C2/D083	9B D0	;Geno Flash
C2/D085	9B D0	;Thunderbolt
C2/D087	9B D0	;HP Rain
C2/D089	9B D0	;Psychopath
C2/D08B	9B D0	;Shocker
C2/D08D	9C D0	;Snowy
C2/D08F	9C D0	;Star Rain
C2/D091	9B D0	;Dummy
C2/D093	9B D0	;Dummy
C2/D095	9B D0	;Dummy
C2/D097	9B D0	;Dummy
C2/D099	9B D0	;Dummy

9B D0 = No modifiers
9C D0 = x0.0625 modifier (4 rights) (Fire Orb, many others)
77 D1 = x0.5 modifier (1 right)
FB D0 = x0.125 modifier (3 rights) with multi-targetting (Ultra Jump)
4F D1 = x0.0625 modifier (4 rights) w/ multi-targetting  (Ultra Flame)



=================================================================

C2/C609 Sets mortally wounded bit

=================================================================

Revive Pick-Me-Up (Revives with status afflicted bonuses from equipped items)
C2/C68C		;beginning

=================================================================

Pick Me Up
C2/C694 BF 13 00 7E ;load max HP
C2/C698 9F 11 00 7E ;save current HP

=================================================================
SPELLS: Targetting (Ultra Jump, Ultra Flame)
C2/D1D8 AD 2C 07
	0A
	AA
	7C E0 D1
	20 D2
	20 D2
	20 D2
	20 D2
	21 D2
	21 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2
	20 D2

C2/D220 60

C2/D221 

=================================================================
Level Up screen strings
C2/D2E0 BF FE D4 C2 ;load pointers from bank $C2:D4FE

(Each is separated by a 00)
C2/D3A5 - Pointers for the following:
C2/D3AF "Mario"
C2/D3B5 "Toadstool"
C2/D3BF "Bowser"
C2/D3C6 "Geno"
C2/D3CB "Mallow"

=================================================================
Level-up screen strings
C2/D5F8 - D6AF pointers

	" reaches level"
C2/D611 - "Max HP"
C2/D629 - "Attack"
C2/D63F - "Defense"
C2/D656 - "Mg.Attack"
C2/D66D - "Mg.Defense"
C2/D687 - " learns" and ""03 01 2E"" (spell name w/ quotes)
C2/D697 - "Get a Bonus!" 
C2/D6A4 - "Choose one!"


=================================================================
C2/DA0D BF 00 C0 F7	;dialogue font?

=================================================================
Battle End
C2/DC76 AD 10 08    LDA $0810  [$00:0810]   A:0000 X:0060 Y:2700 
C2/DC79 F0 03       BEQ $03    [$DC7E]      A:0000 X:0060 Y:2700 
C2/DC7E A9 FF FF    LDA #$FFFF              A:0000 X:0060 Y:2700 
C2/DC81 8D 20 08    STA $0820  [$00:0820]   A:FFFF X:0060 Y:2700 
C2/DC84 8D 22 08    STA $0822  [$00:0822]   A:FFFF X:0060 Y:2700 
C2/DC87 8D 24 08    STA $0824  [$00:0824]   A:FFFF X:0060 Y:2700 
C2/DC8A 8D 26 08    STA $0826  [$00:0826]   A:FFFF X:0060 Y:2700 
C2/DC8D 8D 28 08    STA $0828  [$00:0828]   A:FFFF X:0060 Y:2700 
C2/DC90 AD 32 30    LDA $3032  [$00:3032]   A:FFFF X:0060 Y:2700 ;load current number of characters
C2/DC93 29 FF 00    AND #$00FF              A:0005 X:0060 Y:2700 
C2/DC96 8D 30 08    STA $0830  [$00:0830]   A:0005 X:0060 Y:2700 
C2/DC99 A0 00 00    LDY #$0000              A:0005 X:0060 Y:2700 
C2/DC9C 84 8E       STY $8E    [$00:008E]   A:0005 X:0060 Y:0000 
C2/DC9E B9 33 30    LDA $3033,y[$00:3033]   A:0005 X:0060 Y:0000 
C2/DCA1 29 FF 00    AND #$00FF              A:0100 X:0060 Y:0000 
C2/DCA4 AA          TAX                     A:0000 X:0060 Y:0000 
C2/DCA5 BF 84 DD C2 LDA $C2DD84,x[$C2:DD84] A:0000 X:0000 Y:0000 
C2/DCA9 29 FF 00    AND #$00FF              A:1400 X:0000 Y:0000 
C2/DCAC A6 8E       LDX $8E    [$00:008E]   A:0000 X:0000 Y:0000 
C2/DCAE 9D 20 08    STA $0820,x[$00:0820]   A:0000 X:0000 Y:0000 
C2/DCB1 E8          INX                     A:0000 X:0000 Y:0000 
C2/DCB2 E8          INX                     A:0000 X:0001 Y:0000 
C2/DCB3 86 8E       STX $8E    [$00:008E]   A:0000 X:0002 Y:0000 
C2/DCB5 C8          INY                     A:0000 X:0002 Y:0000 
C2/DCB6 CC 30 08    CPY $0830  [$00:0830]   A:0000 X:0002 Y:0001 
C2/DCB9 30 E3       BMI $E3    [$DC9E]      A:0000 X:0002 Y:0001 

C2/DCBB A0 00 00    LDY #$0000              A:0050 X:000A Y:0005 
C2/DCBE B9 20 08    LDA $0820,y[$00:0820]   A:0050 X:000A Y:0000 
C2/DCC1 C9 FF FF    CMP #$FFFF              A:0000 X:000A Y:0000 
C2/DCC4 F0 0B       BEQ $0B    [$DCD1]      A:0000 X:000A Y:0000 
C2/DCC6 AA          TAX                     A:0000 X:000A Y:0000 
C2/DCC7 BF 00 F8 7F LDA $7FF800,x[$7F:F800] A:0000 X:0000 Y:0000 ;Load overworld stats
C2/DCCB 29 FF 00    AND #$00FF              A:D11E X:0000 Y:0000 
C2/DCCE 99 10 08    STA $0810,y[$00:0810]   A:001E X:0000 Y:0000 
C2/DCD1 C8          INY                     A:001E X:0000 Y:0000 
C2/DCD2 C8          INY                     A:001E X:0000 Y:0001 
C2/DCD3 C0 09 00    CPY #$0009              A:001E X:0000 Y:0002 
C2/DCD6 30 E6       BMI $E6    [$DCBE]      A:001E X:0000 Y:0002 

C2/DCD8 AF 0C 00 FA LDA $FA000C[$FA:000C]   A:001E X:0050 Y:000A ;load XP table pointer
C2/DCDC 85 80       STA $80    [$00:0080]   A:1AFF X:0050 Y:000A 
C2/DCDE A9 FA 00    LDA #$00FA              A:1AFF X:0050 Y:000A ;load A to go to this bank (Bank HEX3A)
C2/DCE1 85 82       STA $82    [$00:0082]   A:00FA X:0050 Y:000A 
C2/DCE3 A0 00 00    LDY #$0000              A:00FA X:0050 Y:000A 
C2/DCE6 84 70       STY $70    [$00:0070]   A:00FA X:0050 Y:0000 
C2/DCE8 84 8E       STY $8E    [$00:008E]   A:00FA X:0050 Y:0000 
C2/DCEA B9 33 30    LDA $3033,y[$00:3033]   A:00FA X:0050 Y:0000 
C2/DCED 29 FF 00    AND #$00FF              A:0100 X:0050 Y:0000 
C2/DCF0 85 8C       STA $8C    [$00:008C]   A:0000 X:0050 Y:0000 
C2/DCF2 98          TYA                     A:0000 X:0050 Y:0000 
C2/DCF3 0A          ASL A                   A:0000 X:0050 Y:0000 
C2/DCF4 A8          TAY                     A:0000 X:0050 Y:0000 
C2/DCF5 B9 20 08    LDA $0820,y[$00:0820]   A:0000 X:0050 Y:0000 
C2/DCF8 C9 FF FF    CMP #$FFFF              A:0000 X:0050 Y:0000 
C2/DCFB D0 03       BNE $03    [$DD00]      A:0000 X:0050 Y:0000 
C2/DD00 85 8A       STA $8A    [$00:008A]   A:0000 X:0050 Y:0000 
C2/DD02 AA          TAX                     A:0000 X:0050 Y:0000 
C2/DD03 AD 32 08    LDA $0832  [$00:0832]   A:0000 X:0000 Y:0000 ;load XP won
C2/DD06 85 7A       STA $7A    [$00:007A]   A:0004 X:0000 Y:0000 
C2/DD08 BF 0E F8 7F LDA $7FF80E,x[$7F:F80E] A:0004 X:0000 Y:0000 ;load accessory
C2/DD0C 29 FF 00    AND #$00FF              A:00FF X:0000 Y:0000 
C2/DD0F C9 50 00    CMP #$0050              A:00FF X:0000 Y:0000 ;check if Exp.Booster
C2/DD12 D0 02       BNE $02    [$DD16]      A:00FF X:0000 Y:0000 ;branch if not

C2/DD14 06 7A       ASL $7A    [$00:007A]   A:0000 X:0000 Y:0000 ;double XP

C2/DD16 BF 0A F8 7F LDA $7FF80A,x[$7F:F80A] A:00FF X:0000 Y:0000 ;load current XP
C2/DD1A C9 0F 27    CMP #$270F              A:270F X:0000 Y:0000 ;check if maxed out
C2/DD1D 30 03       BMI $03    [$DD22]      A:270F X:0000 Y:0000 ;branch if less than 9999
C2/DD1F 4C 72 DD    JMP $DD72  [$00:DD72]   A:270F X:0000 Y:0000 

C2/DD22 18          CLC                     A:0101 X:0000 Y:0000 
C2/DD23 65 7A       ADC $7A    [$00:007A]   A:0101 X:0000 Y:0000 ;add XP won to current XP
C2/DD25 85 72       STA $72    [$00:0072]   A:0105 X:0000 Y:0000 ;store XP sum
C2/DD27 C9 0F 27    CMP #$270F              A:0105 X:0000 Y:0000 ;check if overflow
C2/DD2A 30 05       BMI $05    [$DD31]      A:0105 X:0000 Y:0000 ;branch if less than 9999

C2/DD31 BF 00 F8 7F LDA $7FF800,x[$7F:F800] A:0105 X:0000 Y:0000 ;load Level
C2/DD35 29 FF 00    AND #$00FF              A:D11E X:0000 Y:0000 
C2/DD38 3A          DEC A                   A:001E X:0000 Y:0000 
C2/DD39 0A          ASL A                   A:001D X:0000 Y:0000 
C2/DD3A A8          TAY                     A:003A X:0000 Y:0000 
C2/DD3B B7 80       LDA [$80],y[$FA:1B39]   A:003A X:0000 Y:003A ;load XP needed for level up
C2/DD3D C5 72       CMP $72    [$00:0072]   A:3205 X:0000 Y:003A ;compare to XP sum
C2/DD3F F0 05       BEQ $05    [$DD46]      A:3205 X:0000 Y:003A ;branch if 
C2/DD41 30 03       BMI $03    [$DD46]      A:3205 X:0000 Y:003A ;branch if needed XP less than sum

C2/DD43 4C 6C DD    JMP $DD6C  [$00:DD6C]   A:3205 X:0000 Y:003A 

C2/DD46 A5 8E       LDA $8E    [$00:008E]   A:0082 X:0028 Y:0006 
C2/DD48 0A          ASL A                   A:0001 X:0028 Y:0006 
C2/DD49 A8          TAY                     A:0002 X:0028 Y:0006 
C2/DD4A B9 11 08    LDA $0811,y[$00:0813]   A:0002 X:0028 Y:0002 
C2/DD4D 1A          INC A                   A:0000 X:0028 Y:0002 
C2/DD4E 99 11 08    STA $0811,y[$00:0813]   A:0001 X:0028 Y:0002 
C2/DD51 BF 00 F8 7F LDA $7FF800,x[$7F:F828] A:0001 X:0028 Y:0002 
C2/DD55 1A          INC A                   A:1404 X:0028 Y:0002 
C2/DD56 9F 00 F8 7F STA $7FF800,x[$7F:F828] A:1405 X:0028 Y:0002 
C2/DD5A A6 8E       LDX $8E    [$00:008E]   A:1405 X:0028 Y:0002 
C2/DD5C BF 8A DD C2 LDA $C2DD8A,x[$C2:DD8B] A:1405 X:0001 Y:0002 
C2/DD60 29 FF 00    AND #$00FF              A:0402 X:0001 Y:0002 
C2/DD63 05 70       ORA $70    [$00:0070]   A:0002 X:0001 Y:0002 
C2/DD65 85 70       STA $70    [$00:0070]   A:0002 X:0001 Y:0002 
C2/DD67 A6 8A       LDX $8A    [$00:008A]   A:0002 X:0001 Y:0002 
C2/DD69 4C 31 DD    JMP $DD31  [$C2:DD31]   A:0002 X:0028 Y:0002 

C2/DD6C A5 72       LDA $72    [$00:0072]   A:0010 X:0000 Y:0000 ;set character address
C2/DD6E 9F 0A F8 7F STA $7FF80A,x[$7F:F80A] A:0000 X:0000 Y:0000 ;add address to read from XP gathered thus far

C2/DD72 A5 8E       LDA $8E    [$00:008E]   A:0000 X:0000 Y:0000
C2/DD74 1A          INC A                   A:0000 X:0000 Y:0000
C2/DD75 CD 30 08    CMP $0830  [$00:0830]   A:0001 X:0000 Y:0000
C2/DD78 10 04       BPL $04    [$DD7E]      A:0001 X:0000 Y:0000
C2/DD7E A5 70       LDA $70    [$00:0070]   A:0001 X:0000 Y:0000
C2/DD80 8D 34 08    STA $0834  [$00:0834]   A:0000 X:0000 Y:0000
C2/DD83 60          RTS                     A:0000 X:0000 Y:0000
=================================================================
... JSR from $C2/A1E3...
C2/DD92 
=================================================================

LEVEL-UP STUFF BEGINS here:
C2/DDBC BB          TYX                     A:0000 X:0000 Y:2000
C2/DDBD A9 02 00    LDA #$0002              A:0000 X:2000 Y:2000
C2/DDC0 9F 08 00 40 STA $400008,x[$40:2008] A:0002 X:2000 Y:2000
C2/DDC4 80 54       BRA $54    [$DE1A]      A:0002 X:2000 Y:2000
C2/DE1A A9 00 00    LDA #$0000              A:0002 X:2000 Y:2000
C2/DE1D 9F 62 00 40 STA $400062,x[$40:2062] A:0000 X:2000 Y:2000
C2/DE21 9F 64 00 40 STA $400064,x[$40:2064] A:0000 X:2000 Y:2000
C2/DE25 4C 94 DE    JMP $DE94  [$C2:DE94]   A:0000 X:2000 Y:2000

=================================================================
C2/DE28 
=================================================================
... Jump from $C2/DE25...
C2/DE94

C2/DED4 A9 54 E6 ;sets pointer table for something?
	85 EA
C2/DED9 A9 C2 00 ;it's within bank $C2
	85 EC
C2/DEDE 20 74 E5    JSR $E574  [$C2:E574]   A:00C2 X:0000 Y:2000
=================================================================
C2/DEE1

=================================================================
E8 = Byte 1 Max HP Bonus
EA = Byte 2 Attack/Defense Bonus
EC = Byte 3 MgAtk/MgDef Bonus

AD 98 34 = ???
8D 9A 34 = Current HP (03)
8D 9C 34 = New HP Value

8D F0 30 = set to 0005
8D F2 30 = set to 082C
9C 9A 34 = Byte 2 Atk/Def Bonus
9C 9C 34 = Byte 2 Atk/Def Bonus
8D 9A 34 = Current Attack (06)
8D 9C 34 = New Attack Value

8C F0 30 = set to 0006
8C F2 30 = set to 162C
8D 9A 34 = Current Defense (07)
8D 9C 34 = New Defense Value

8C F0 30 = set to 0007
8C F2 30 = set to 242C
=================================================================
Level-Up stats upon leveling
C2/DF6D

C2/DF7B AF 0E 00 FA LDA $FA000E[$FA:000E]   A:0000 X:0000 Y:0000 ;load stat modifications from table (3A:1B39)

C2/DF93 7F 03 F8 7F ADC $7FF803,x[$7F:F803] A:0004 X:0000 Y:0000 ;add max HP from overworld stats
C2/DF97 9F 03 F8 7F STA $7FF803,x[$7F:F803] A:0004 X:0000 Y:0000 ;save to max HP
C2/DF9B 9F 01 F8 7F STA $7FF801,x[$7F:F801] A:0004 X:0000 Y:0000 ;save to current HP
C2/DF9F 8D 9C 34    STA $349C  [$00:349C]   A:0004 X:0000 Y:0000
C2/DFA2 A9 05 00    LDA #$0005              A:0004 X:0000 Y:0000 
C2/DFA5 8D F0 30    STA $30F0  [$00:30F0]   A:0005 X:0000 Y:0000 ;save to RAM for display?
C2/DFA8 A9 2C 08    LDA #$082C              A:0005 X:0000 Y:0000 
C2/DFAB 8D F2 30    STA $30F2  [$00:30F2]   A:082C X:0000 Y:0000 

C2/DFBE BF 06 F8 7F LDA $7FF806,x[$7F:F806] A:2243 X:0000 Y:0001 ;load character's base attack stat
C2/DFC2 8D 9A 34    STA $349A  [$00:349A]   A:2214 X:0000 Y:0001  
C2/DFC5 A5 EA       LDA $EA    [$00:00EA]   A:2214 X:0000 Y:0001 ;load attack level up bonuses
C2/DFC7 4A          LSR A                   A:2243 X:0000 Y:0001 ;isolate upper bits
C2/DFC8 4A          LSR A                   A:2221 X:0000 Y:0001  
C2/DFC9 4A          LSR A                   A:2210 X:0000 Y:0001  
C2/DFCA 4A          LSR A                   A:2208 X:0000 Y:0001  
C2/DFCB 18          CLC                     A:2204 X:0000 Y:0001  
C2/DFCC 7F 06 F8 7F ADC $7FF806,x[$7F:F806] A:2204 X:0000 Y:0001  
C2/DFD0 90 02       BCC $02    [$DFD4]      A:2218 X:0000 Y:0001 
C2/DFD4 9F 06 F8 7F STA $7FF806,x[$7F:F806] A:2218 X:0000 Y:0001 ;save to character's base attack stat
...
C2/E0AF AF 20 00 FA ;load table for learned spells
...
C2/E0DC 1F 10 F8 7F ;add to spell list (byte 1)
C2/E0E0 9F 10 F9 7F ;save to spell list (byte 1)
=================================================================
??? Level-up overworld bonus stats?
C2/E2D5 7C D8 E2
	DE E2	;attack bonus
	66 E3	;max hp bonus
	97 E3	;magic bonus
	9C 9A
	34 9C
	9C 34
	A6 EC
	C8 B7

C2/E49E 7C A1 E4
	A7 E4
	B0 E4
	BE E4
	A6 EC
	A5 E0
	
=================================================================
Flower Bonus: Animation Routine
C2/F455
	61 F4	;...
	62 F4	;Displays ATTACK UP!
	73 F4	;Displays DEFENSE UP!
	84 F4	;Displays HPMAX!
	8C F4	;Displays ONCE AGAIN!
	99 F4	;Displays LUCKY!

11		;Return subroutine

==ATTACK UP!==
	95		;Initialize bonus message sequence
	96 00 00 00 E0	;Display bonus message: ATTACK coords (0, -32)
	04 10 0A 00	;Pause script until 10 frames elapsed
	96 00 02 02 E8	;Display bonus message: UP! coords (2, -24)
	97		;Pause script until bonus message complete
	11		;Return subroutine

==DEFENSE UP!==
	95		;Initialize bonus message sequence
	96 00 01 00 E0	;Display bonus message: ATTACK coords (0, -32)
	04 10 0A 00	;Pause script until 10 frames elapsed
	96 00 02 02 E8	;Display bonus message: UP! coords (2, -24)
	97		;Pause script until bonus message complete
	11		;Return subroutine

==HPMAX!==
	95		;Initialize bonus message sequence
	96 00 03 04 E0	;Display bonus message: HPMAX! coords (4, -32)
	97		;Pause script until bonus message complete
	11		;Return subroutine

==ONCE AGAIN!==
	95		;Initialize bonus message sequence
	96 00 04 00 E0	;Display bonus message: ONCE coords (0, -32)
	96 00 05 04 E8	;Display bonus message: AGAIN! coords (4, -24)
	97		;Pause script until bonus message complete
	11		;Return subroutine

==LUCKY!==
C2/F499 95		;Initialize bonus message sequence
	96 00 06 02 E0	;Display bonus message: LUCKY! coords (2, -32)
	97		;Pause script until bonus message complete
	11		;Return subroutine

==???== (Something to do with allies and victory?)
C2/F4A1	20 03 01 00	;AMEM (8-bit) $63 = 1
	20 05 01 00	;AMEM (8-bit) $65 = 1
	6C		;???
	43 0A		;Sprite sequence = 10 (Victory pose)
	4E		;Pause script until sprite sequence is done
	04 10 1E 00	Pause script until 30 frames elapsed
	20 0E 01 00	;AMEM (8-bit) $6E = 1
	22 6E 62 00	;OMEM (main) $62 = AMEM (8-bit) $6E
	5E		;Return sprite queue

==Toad trains you in battle (battle tutorial)==
C2/F4BF